java基礎 2 物件導向

2021-09-10 17:52:40 字數 1368 閱讀 7981

(以下是我的理解)

**1.b事 == 物件之間發生互動

物件抽象成程式中的類;物件所擁有的特徵與行為,抽象成類中的屬性和方法,互動就是物件發生行為,抽象成類的方法呼叫

現實中一件事,a導致b怎麼樣ab抽象成程式中的類

導致可以 是 a類中的方法 ,怎麼樣可以是b類中的方法

物件導向程式設計:

就是將現實世界中的事情(如:李華遊玩長城),變成 person } 。

開發過程只需關注物件

2.物件導向的三大特徵:繼承 / 封裝 / 多型

繼承 – super類和子類的繼承關係,父類公有的屬性和方法 子類全都擁有,而任何子類定義的 父類無法使用。

封裝 – 將現實中的具體事物抽象成程式中的物件,並且通過設定訪問級別來保證安全性。

多型 – 動態多型: a 繼承 b; b b = new a(); (子類a重寫父類b方法) b.afunc();

好處:**擴充套件性好 可讀性強 維護簡單

字面理解: 類是具有共同特徵的事物集合,是抽象化的,不存在實體與之對應。

物件導向程式設計的類:類就是對這群事物的共同特徵進行 資料化。定義概括的屬性和方法。

類的種類有哪些:

型別繼承

實現介面

方法屬性

普通類單繼承

介面多實現

(overloading)方法名相同,引數不相同

抽象類單繼承

介面多實現

(overloading)方法名相同,引數不相同;

抽象類可以沒抽象方法,有抽象方法必須是抽象類介面/

介面多實現

方法必須公有,必須抽象未實現;

屬性型別:public final

補充:

2019/02/11 :類的構造順序: 父類 —>子類 (子類的構造方法第一行有乙個super();就是有時候省略掉了而已)

2019/02/12:

類的載入順序:靜態-》非靜態,屬性-》**塊-》構造方法

屬性載入 是先申請記憶體空間-》初始化-》使用 (申請記憶體空間指的是先分配空間,基本型別變數如int型別先設定為0,引用型別設定為null,然後按順序賦值)

強調的一點:靜態內容與類相關,非靜態內容與例項相關 ,靜態內容只在第一次呼叫類時初始化儲存至永久代,非靜態內容每次例項化都會重新設定乙份儲存至堆中

2019/02/13;看了一篇文章講 物件導向和面向過程區別 ,非常好吸收:

java基礎 物件導向(2)

一 建構函式 乙個完整的類由屬性和方法構成,其中有一種方法的作用是對物件進行初始化,這種函式就是建構函式 建構函式的特點 1 函式名與類名相同 2 不用定義返回型別 3 不可以寫return語句 4 乙個類可以擁多個構造函,每個建構函式的引數不相同,以過載的形式存在 示例 public class ...

java 物件導向(2)

有關 關鍵字 private final 和 abstract 1.private private 私有,許可權修飾符 用於修飾類中的成員 成員變數,成員函式 私有只在本類中有效。將age私有化以後,類以外即使建立了物件也不能直接訪問。但是人應該有年齡,就需要在person類中提供對應訪問age的方...

Java物件導向(2)

位置不同 成員變數 類中方法外 區域性變數 方法定義中或方法宣告上 記憶體不同 成員變數 堆記憶體 區域性變數 棧記憶體 生命週期不同 成員變數 隨著物件的建立而存在,隨著物件的消失而消失 區域性變數 隨著方法的呼叫而存在,隨著方法的呼叫完畢而消失 初始化值不同 成員變數 有預設出事值 區域性變數 ...