物件導向程式設計(1)繼承

2022-08-20 18:48:10 字數 1342 閱讀 4849

透切理解物件導向三大基本特性是理解物件導向五大基本原則的基礎.

三大特性是:封裝,繼承,多型  

所謂封裝,也就是把客觀事物封裝成抽象的類,並且類可以把自己的資料和方法只讓可信的類或者物件操作,對不可信的進行資訊隱藏。封裝是物件導向的特徵之一,是物件和類概念的主要特性。 簡單的說,乙個類就是乙個封裝了資料以及操作這些資料的**的邏輯實體。在乙個物件內部,某些**或某些資料可以是私有的,不能被外界訪問。通過這種方式,物件對內部資料提供了不同級別的保護,以防止程式中無關的部分意外的改變或錯誤的使用了物件的私有部分。

所謂繼承是指可以讓某個型別的物件獲得另乙個型別的物件的屬性的方法。它支援按級分類的概念。繼承是指這樣一種能力:它可以使用現有類的所有功能,並在無需重新編寫原來的類的情況下對這些功能進行擴充套件。 通過繼承建立的新類稱為「子類」或「派生類」,被繼承的類稱為「基類」、「父類」或「超類」。繼承的過程,就是從一般到特殊的過程。要實現繼承,可以通過「繼承」(inheritance)和「組合」(composition)來實現。繼承概念的實現方式有二類:實現繼承與介面繼承。實現繼承是指直接使用基類的屬性和方法而無需額外編碼的能力;介面繼承是指僅使用屬性和方法的名稱、但是子類必須提供實現的能力;

今天學的整合再回顧

static 是乙個修飾符, 用於修飾成員

static 修飾的成員被所有的物件所共享

static 優先於物件存在, 因為 static 的成員隨著類的載入就已經存在了

靜態方法只能訪問靜態成員(包括成員變數和成員函式), 非靜態方法即可以訪問靜態成員, 也可以訪問非靜態成員.

靜態方法中不可以使用 this 或者 super 關鍵字.

主函式是靜態的, 所以只能訪問靜態方法和靜態變數.

靜態前面省略的是類名, 非靜態前面省略的是 this

public: 因為許可權必須是最大的; static: 不需要物件, 直接用主函式所屬類名呼叫即可 void: 主函式沒有具體的返回值 main: 函式名, 不是關鍵字, 只是 jvm 識別的固定的名字 string args: 這是主函式的引數列表, 是乙個陣列型別的引數, 而且元素都是字串型別 虛擬機器呼叫主函式時, 傳遞了引數 new string[0].

靜態變數

當分析物件中所具備的成員變數的值都是相同的, 這時這個成員就可以被靜態修飾.

只有資料在物件中都是不同的, 那就是物件的特有資料, 必須儲存在物件中, 是非靜態的.

如果是相同的資料, 物件不需要作修改, 只需要使用即可, 不需要儲存在物件中, 定義成靜態的.

封裝就是把抽象出來的資料和對資料的操作封裝在一起,資料被保護在內部,程式的其它部分只有通過被授權的操作(成員方法),才能對資料進行操作。

js封裝只有兩種狀態,一種是公開的,一種是私有的。

案例:

物件導向程式設計 繼承

繼承是物件導向程式設計的主要特點之一。繼承,顧名思義就是子繼承父的所有。在面向程式設計中繼承的意思並沒變,子類繼承父類所擁有的屬性 方法。使用extends關鍵字使子類繼承父類,子類就可以自動復用父類的方法了 私有方法除外 並且繼承了父類的所有屬性。在子類例項化過程中子類的構造方法一定會去呼叫父類的...

物件導向程式設計 繼承

一 簡介 1 繼承是軟體復用的一種方式,通過繼承,可以吸收現有類的資料和行為來建立新類,並增添新的效能增類。2 派生類顯示繼承的基類稱為直接基類,經兩級或者多級類層次繼承的類稱為間接基類。3 繼承的方式 public private protected 4 派生類一般不能直接訪問基類的private...

python物件導向程式設計 繼承

物件導向三大特性 封裝根據職責將屬性和方法封裝到乙個抽象的類中 繼承實現 的重用,相同的 不需要重複的編寫 多型不同的物件呼叫相同的方法,產生不同的執行結果,增加 的靈活度 1 繼承的語法class 類名 父類名 pass2 專業術語 3 繼承的傳遞性 子類擁有父類以及父類的父類中封裝的所有屬性和方...