類和物件與繼承

2021-08-08 04:35:32 字數 2047 閱讀 7700

類與物件

1.類:類是客觀存在的,抽象的,概念的東西。

public class dog

void hungry() }

1.public 是類的修飾符,表明該類是公共類,可以被其他類訪問。

2.class 是定義類的關鍵字。

3.dog是類的名稱。

4.name,age是類的變數,也叫屬性;bark(),hungry()行為也是類中的方法。

(引用

區域性變數:在方法或者語句塊中定義的變數被稱為區域性變數。變數宣告和初始化都是在方法中,方法結束後,變數就會自動銷毀。

成員變數:成員變數是定義在類中,方法體之外的變數。這種變數在建立物件的時候例項化(分配記憶體)。成員變數可以被類中的方法和特定類的語句訪問。

類變數:類變數也宣告在類中,方法體之外,但必須宣告為static型別()。static也是修飾符的一種。

)2.物件:物件是具體的,實際的,代表乙個事物。例如:車是乙個類,汽

車,自行車就是他的物件。(物件具有屬性和行為,行為也就是方法)

關於類與物件的描述:類是物件的模版,物件是類的乙個個體。

物件的定義方法(建立物件也叫類的例項化)

1,物件宣告:person p ; 類名 物件名;(宣告乙個型別為」person」的物件p)

2,物件建立 p = new person(); 物件名 = new 類名();( new作用:分配記憶體空間。用來存放p這個物件)

構造方法

person p = new person(); (宣告乙個型別為」person」的物件p,但僅僅是宣告,未真正讓這個p誕生,new關鍵字用於分配記憶體空間來放置p物件。)

1.new後面的這個」person()「就是乙個方法叫做構造方法。(構造方法是由系統自動生成,一旦使用者編寫了自定義的構造方法,那麼系統將不再為類生成預設的構造方法,所以用將不能再使用無參構造方法來建立物件)

2.構造方法分為:無參構造方法和有參構造方法(有什麼樣的構造方法,就能依照構造方法生產物件)

方法的過載

乙個類可以有多個構造方法,方法名相同,引數列表不同(不同的引數型別,不同的引數個數,不同的引數順序),這叫做構造方法的過載。(只跟引數有關,就是兩個方法名相同,但是引數不同,根本上就是不同的方法)

關鍵字this

this:可以為呼叫了其方法的那個物件生成相應的標記(哪個物件呼叫了方法,那麼這個方法內的this指的就是哪個物件,當方法的傳入引數與方法本身定義的變數同名時,引用方法自身的變數要加this)

static關鍵字

static表示「全域性」或者「靜態」的意思,用來修飾全域性變數和方法,也可以形成靜態static**塊。(宣告static的變數實質上就是全域性變數)

繼承

1.類和類之間的繼承關係,其中父類又叫 超類或 基類,子類又叫 派生類。父類是子類的一般化,子類是父類的特化(具體化)。

注意:乙個類不能繼承多個類,乙個類可以有多個子類。

2.繼承使用的關鍵字的extends

方法的覆蓋(重寫)

1.父類與子類之間的多型性,對父類的方法進行重新定義,在子類中定義的某方法與其父類有相同的名稱和引數,就可以稱為該方法被重寫或者覆蓋了。

多型

指允許不同類的物件對同一訊息做出響應。即同一訊息可以根據傳送物件的不同而採用多種不同的行為方式(呼叫相同的方法,可以得到不同的結果和表現形式)

super關鍵字

super關鍵字引用當前物件的直接父類中的屬性和方法(用來訪問直接父類中被隱藏的屬性和方法,經常在父類與子類中有相同屬性和方法定義時使用)

注意:若要自己書寫super()方法 要遵守以下兩點

1.super要放在第一行。 2.super所指引的構造方法在父類中必須要有。

類與物件 繼承

繼承是物件導向的基本特徵之一,通過繼承機制,可以在已有的類的基礎上建立新類,新類可以繼承已有類的屬性和行為,也可以修改已有類的屬性和行為,或者增加新的屬性和行為以滿足自身特殊的需要。ifndef a h ifdef a h include using namespace std class a a ...

類與物件的繼承

類與物件的繼承 1.繼承是什麼 類與物件的繼承可以說是方便呼叫一些類中的方法,其本質就是像兒子在接受父親的遺傳,父親能做的,兒子也能做,不過兒子卻是在不斷成長,所以有些兒子能另外做的事 不是接受父親遺傳,是後天生成的 2.繼承的基本格式 public class 子類 extends 父類 繼承所需...

C 類和物件 繼承

當我們在定義類的時候類與類之間可能存在某些共性這些共性是可以通過繼承被傳承給下乙個類的,我們將其稱為繼承,使用其技術可以減少重複的 提高類之間的關係性 語法格式 class 子類 繼承方式 父類 class baseclass class myclas public baseclass 繼承方式一共...