大战熟女丰满人妻av-荡女精品导航-岛国aaaa级午夜福利片-岛国av动作片在线观看-岛国av无码免费无禁网站-岛国大片激情做爰视频

專注Java教育14年 全國咨詢/投訴熱線:400-8080-105
動力節點LOGO圖
始于2009,口口相傳的Java黃埔軍校
首頁 學習攻略 Java學習 Java多態性的表現實例

Java多態性的表現實例

更新時間:2022-11-28 11:53:06 來源:動力節點 瀏覽1475次

面向對象編程有三個特征,即封裝、繼承和多態。

封裝隱藏了類的內部實現機制,從而可以在不影響使用者的前提下改變類的內部結構,同時保護了數據。

繼承是為了重用父類代碼,同時為實現多態性作準備。那么什么是多態呢?

方法的重寫、重載與動態連接構成多態性。Java之所以引入多態的概念,原因之一是它在類的繼承問題上和C++不同,后者允許多繼承,這確實給其帶來的非常強大的功能,但是復雜的繼承關系也給C++開發者帶來了更大的麻煩,為了規避風險,Java只允許單繼承,派生類與基類間有IS-A的關系(即“貓”is a “動物”)。這樣做雖然保證了繼承關系的簡單明了,但是勢必在功能上有很大的限制,所以,Java引入了多態性的概念以彌補這點的不足,此外,抽象類和接口也是解決單繼承規定限制的重要手段。同時,多態也是面向對象編程的精髓所在。

要理解多態性,首先要知道什么是“向上轉型”。

定義了一個子類Cat,它繼承了Animal類,那么后者就是前者是父類。可以通過

Cat c = new Cat();

實例化一個Cat的對象,這個不難理解。但當這樣定義時:

Animal a = new Cat();

這代表什么意思呢?

很簡單,它表示我定義了一個Animal類型的引用,指向新建的Cat類型的對象。由于Cat是繼承自它的父類Animal,所以Animal類型的引用是可以指向Cat類型的對象的。那么這樣做有什么意義呢?因為子類是對父類的一個改進和擴充,所以一般子類在功能上較父類更強大,屬性較父類更獨特,

定義一個父類類型的引用指向一個子類的對象既可以使用子類強大的功能,又可以抽取父類的共性。

所以,父類類型的引用可以調用父類中定義的所有屬性和方法,而對于子類中定義而父類中沒有的方法,它是無可奈何的;

同時,父類中的一個方法只有在在父類中定義而在子類中沒有重寫的情況下,才可以被父類類型的引用調用;

對于父類中定義的方法,如果子類中重寫了該方法,那么父類類型的引用將會調用子類中的這個方法,這就是動態連接。

看下面這段程序:

class Father{
public void func1(){
func2();
}
//這是父類中的func2()方法,因為下面的子類中重寫了該方法
//所以在父類類型的引用中調用時,這個方法將不再有效
//取而代之的是將調用子類中重寫的func2()方法
public void func2(){
System.out.println("AAA");
}
}
class Child extends Father{
//func1(int i)是對func1()方法的一個重載
//由于在父類中沒有定義這個方法,所以它不能被父類類型的引用調用
//所以在下面的main方法中child.func1(68)是不對的
public void func1(int i){
System.out.println("BBB");
}
//func2()重寫了父類Father中的func2()方法
//如果父類類型的引用中調用了func2()方法,那么必然是子類中重寫的這個方法
public void func2(){
System.out.println("CCC");
}
}
public class PolymorphismTest {
public static void main(String[] args) {
Father child = new Child();
child.func1();//打印結果將會是什么?
}
}

上面的程序是個很典型的Java多態性的例子。子類Child繼承了父類Father,并重載了父類的func1()方法,重寫了父類的func2()方法。重載后的func1(int i)和func1()不再是同一個方法,由于父類中沒有func1(int i),那么,父類類型的引用child就不能調用func1(int i)方法。而子類重寫了func2()方法,那么父類類型的引用child在調用該方法時將會調用子類中重寫的func2()。

提交申請后,顧問老師會電話與您溝通安排學習

免費課程推薦 >>
技術文檔推薦 >>
主站蜘蛛池模板: 中文字幕亚洲一区二区三区 | 日本一级淫片a的一级欧美 日本一级淫片a免费播放 | 少妇美女极品美軳人人体 | 日日碰夜夜爽 | 久久黄色精品视频 | 久久在线免费 | 国产三级做爰在线播放最爱 | 亚洲欧美一区二区三区综合 | 黄 色 三 级 网站 | 色偷偷免费视频 | 国产伦一区二区三区四区久久 | 视频在线欧美 | 国内精品91久久久久 | 色婷婷综合久久久久中文 | 成年女人免费毛片视频永久 | 日韩欧美一区二区三区四区 | 一级视频片 | 欧美特欧美特级一片 | 欧美午夜性春猛交 | 国产五月色婷婷六月丁香视频 | 久艾草国产成人综合在线视频 | 欧美成人免费在线 | 久久久综合久久 | 中文字幕日韩一区二区不卡 | 伊人网站在线 | 欧美男女爱爱视频 | 中文字幕在线视频免费观看 | 国内视频自拍 | 香蕉一区二区三区观 | 中文字幕在线综合 | 97精品国产91久久久久久 | 亚洲精品国产成人99久久 | 欧美日韩高清一区二区三区 | 亚洲二三区 | 久久九九免费视频 | 日本老年人精品久久中文字幕 | 国产自愉怕一区二区三区 | 91亚洲国产成人精品性色 | 性生活视频免费 | 一级毛片免费观看不收费 | 欧美一及 |