JAVA打怪之路 - 面向對象編程下

面向對象編程下

四、面向對象(OOP)三大特徵

① 封裝 (Encapsulation)

Java中通過將數據聲明爲私有的(private),再提供公共的(public)方法: getXxx()和setXxx()實現對該屬性的操作,以實現下述目的:
(1)隱藏一個類中不需要對外提供的實現細節;
(2)使用者只能通過事先定製好的方法來訪問數據,可以方便地加入控制邏輯,限制對屬性的不合理操作;
(3)便於修改,增強代碼的可維護性;
在這裏插入圖片描述
② 繼承 (Inheritance)

類繼承語法規則:
(1) class Subclass extends SuperClass{ }
(2)子類不能直接訪問父類中私有的(private)的成員變量和方法。
(3)Java只支持單繼承和多層繼承,不允許多重繼承。即一個子類只能有一個父類,一個父類可以派生出多個子類。
(4) 減少代碼冗餘,便用功能擴展,提供多態的前提。

③ 多態 (Polymorphism)
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
五、關鍵字

① this 表示當前對象,可以調用類的屬性、方法和構造器。
(1)它在方法內部使用,即這個方法所屬對象的引用;
(2)它在構造器內部使用,表示該構造器正在初始化的對象。

  1. 在任意方法或構造器內,如果使用當前類的成員變量或成員方法可以在其前面添加this,增強程序的閱讀性。不過,通常我們都習慣省略this。
  2. 當形參與成員變量同名時,如果在方法內或構造器內需要使用成員變量,必須添加this來表明該變量是類的成員變量。
    3.使用this訪問屬性和方法時,如果在本類中未找到,會從父類中查找。
    4.this可以作爲一個類中構造器相互調用的特殊格式。this(形參列表)。
    注意:
    在這裏插入圖片描述

② package 包

包對應於文件系統的目錄,package語句中,用 “.” 來指明包(目錄)的層次;包通常用小寫單詞標識。通常使用所在公司域名的倒置:com.pzl.util。
JDK中主要的包介紹
在這裏插入圖片描述
③ import

爲使用定義在不同包中的Java類,需用import語句來引入指定包層次下所需要的類或全部類(.*)。 import語句告訴編譯器到哪裏去尋找類。import 包名. 類名;
在這裏插入圖片描述

④ super

在這裏插入圖片描述

this和super的區別:
在這裏插入圖片描述
⑤ static
在這裏插入圖片描述
類變量 vs 實例變量內存解析
在這裏插入圖片描述
類方法(class method)
在這裏插入圖片描述
⑥ final
在這裏插入圖片描述
⑦ abstract (抽象類與抽象方法)
在這裏插入圖片描述

⑧ inteface (接口)
在這裏插入圖片描述
在這裏插入圖片描述

Java 8中關於接口的改進:
在這裏插入圖片描述

在這裏插入圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章