3 物件導向的多型與內部類

2021-09-26 02:29:40 字數 1256 閱讀 2161

繼承關係使乙個子類繼承父類的特徵,並且附加一些新特徵。子類是它的父類的特殊化,每個子類的例項都是其父類的例項,但是反過來就不成立。多型意味著父類的變數可以指向子類物件。

/**

* 父類引用子類物件

*/class demo05

}class fu

}class zi extends fu

void playlol()

}class sun extends zi

/* 輸出

老王50

大王20

大王*/

多型成員變數, 當子父類**現同名的成員變數時,多型呼叫該變數時:

多型成員函式

多型靜態函式:

簡而言之:編譯和執行看等號的左邊。其實真正呼叫靜態方法是不需要物件的,靜態方法通過類直接呼叫。  

結論: 1. 對於成員變數和靜態函式,編譯和執行都看左邊。 2. 對於成員函式,編譯看左邊,執行看右邊。

注意:向下轉型

多型的前提要有繼承,狀態的轉換只能向上轉(子轉父)

可以向下轉(強制型別轉換)

多型中成員變數的特點 :只能訪問父類中的成員變數,就算子類有,也不能訪問

多型中成員函式的特點:

我們需要將類寫在其他類的內部,可以寫在其他的成員位置和其他類的區域性位置,這時寫在其他類內部的類就稱為內部類。

在描述事物,若乙個事物內部還包含其他可能包含的事物,比如在描述汽車時,汽車中 還包含這發動機這個事物,這時發動機就可以使用內部類來描述。即就是內部事物必須寄宿 在外部事物內部。

//1.如何訪問非靜態內部類中的成員?

//inner是outer的非靜態成員

//想要建立inner物件,前提是inner這個類存在

//如何讓inner類存在,就得建立outer的物件

public class main

}class outer }}

/*輸出

10inner show...30

1020

*/

public class main 

}class outer

}}

public class main 

}class outer

}}

注意:

物件導向 內部類

在學內部類前,我自己先問了自己2個問題!1 什麼是內部類呢?簡單說 就是在乙個類中在建立乙個類。2 而為什麼又要搞這個內部類呢?我想是為了在於現實中的一些建模問題吧,讓事物更加形象。比如要建立 人體 這個類,有很多功能吧,比如 吃飯 看書 而這些功能又需要 嘴巴 眼睛 那麼我們就不得不建立 嘴巴 眼...

物件導向 內部類

asp.net android ios開發 net培訓 期待與您交流!7.1內部類 內部類 將乙個類定義在另乙個類裡面,裡面那個類就稱為內部類.格式 class outclass 注意 內部類可以定義在外部類的成員位置,也可以是在外部類的區域性位置.如 class outclass 注意 內部類可以...

物件導向 內部類

定義 將乙個類定義在另乙個類的裡面,裡面那個類就是內部類,又稱為巢狀類或者內建類。內部類生成的位元組碼檔名格式為 outerclass innerclass.class 內部類可以分成成員內部類 區域性內部類以及匿名內部類。在乙個類中使用內部類,可以在內部類中直接訪問其所在類的私有成員變數,儘管這些...