国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學(xué)院 > 開發(fā)設(shè)計 > 正文

JAVA中用接口實現(xiàn)多繼承和多態(tài)的方法

2019-11-18 15:36:37
字體:
供稿:網(wǎng)友

1.java里沒有多繼續(xù),一個類之能有一個父類。而繼續(xù)的表現(xiàn)就是多態(tài)。一個父類可以有多個子類,而在子類里可以重寫父類的方法(例如方法PRint()),這樣每個子類里重寫的代碼不一樣,自然表現(xiàn)形式就不一樣。這樣用父類的變量去引用不同的子類,在調(diào)用這個相同的方法print()的時候得到的結(jié)果和表現(xiàn)形式就不一樣了,這就是多態(tài),相同的消息(也就是調(diào)用相同的方法)會有不同的結(jié)果。舉例說明:

//父類public class Father{   //父類有一個打孩子方法   public void hitChild(){   }}//子類1public class Son1 extends Father{   //重寫父類打孩子方法   public void hitChild(){      System.out.println("為什么打我?我做錯什么了!");   }}//子類2public class Son2 extends Father{   //重寫父類打孩子方法   public void hitChild(){      System.out.println("我知道錯了,別打了!");   }}//子類3public class Son3 extends Father{   //重寫父類打孩子方法   public void hitChild(){      System.out.println("我跑,你打不著!");   }}//測試類public class Test{   public static void main(String args[]){      Father father;      father = new Son1();      father.hitChild();      father = new Son2();      father.hitChild();      father = new Son3();      father.hitChild();   }}

都調(diào)用了相同的方法,出現(xiàn)了不同的結(jié)果!這就是多態(tài)的表現(xiàn)!

 

2.JAVA中沒有多繼續(xù),

而用接口實現(xiàn)了多繼續(xù)!一個類或是可以同時實現(xiàn)多個接口!(就相當(dāng)于C++里一個類同時繼續(xù)了多個類!)例如:

public class Son implements Father1,Father2,Father3{

}

接口有利于代碼功能的擴展(增加新的功能)!而繼續(xù)則有利于代碼功能的修改(把舊的功能改成新的功能)!這里舊功能的修改和新功能的增加前提是不修改舊的功能,舊的功能仍然可以使用!舊類的代碼也不做修改!

接著上面的繼續(xù)舉例:上面例子中的子類我們統(tǒng)稱為一代子類

1.用繼續(xù)修改舊的功能。

現(xiàn)在假如一代Son1的功能打孩子,也就是方法hitChild()里邊的功能實現(xiàn)有問題,我們要把具體實現(xiàn)修改掉,那么我們可以重新寫一個新的二代子類Son11繼續(xù)自一代子類Son1,并重寫其hitChild()方法。

//二代子類public class Son11 extends Son1{   //重寫父類打孩子方法   public void hitChild(){      System.out.println("我是二代子類對此方法的新實現(xiàn)");   }}

2.用接口實現(xiàn)增加新的功能。

現(xiàn)在類Son1已經(jīng)有了‘打孩子’功能(也就是方法),而我們有了新的需求,我們需要它還要有一個新的功能‘寵孩子’(新方法pet();)。而舊的代碼不能動!那么我們可以定義一個新的接口(PetInterFace),接口里定義這個方法pet()的聲明。再重新寫一個二代子類Son11,讓它先繼續(xù)類Son1,同時實現(xiàn)接口 PetInterFace!并實現(xiàn)接口里的 pet()方法!



發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 方城县| 宜都市| 左贡县| 河曲县| 林甸县| 江北区| 门头沟区| 开江县| 容城县| 辉县市| 色达县| 永仁县| 江达县| 蒲城县| 前郭尔| 香港| 油尖旺区| 手游| 铜川市| 上林县| 伊通| 中西区| 错那县| 张家界市| 宜春市| 区。| 孙吴县| 大足县| 卢龙县| 高要市| 怀柔区| 宜兴市| 赤水市| 班戈县| 玛沁县| 桃园县| 额济纳旗| 东海县| 辽中县| 香河县| 商洛市|