繼承的簡單實現

2021-07-08 18:07:27 字數 1114 閱讀 4702

題目要求:有兩種人分別是中國人和美國人,使用物件導向的思想,分別實現讓他們說出自己國家的問候語,該如和實現?

中國人:你好! 美國人:hello!

首先分析出裡面共有的特徵

1、都是人類;

2、都有說話的方法;

那麼就確定了父類的結構

public class persons 

}

然後再定義兩個類乙個中國人類,乙個美國人類分別重寫父類裡面的方法say()方法

中國人類

public class chinese extends persons

}

美國人類

public class american extends persons

}

在測試類中分別建立中國人和美國人的物件

public static void main(string args)

輸出結果為:

中國人說:你好!
美國人說:hello!

看到上面的方式,總感覺有點彆扭,有沒有更簡潔的方法呢?答案是肯定的,那就是使用抽象類,這裡重新定義乙個抽象父類apersons

public abstract class apersons
因為父類是乙個抽象類,所以裡面的方法沒有方法體,我們修改一下讓中國人類和美國人類分別繼承apersons類,然後實現裡面的抽象方法

中國人類

public class chinese extends apersons

}

美國人類

public class american extends apersons

}

測試類裡面的內容不用修改,這時的執行結果和上面的是一樣的,從這個例子來看,使用抽象要比之前定義的方法要省幾行**,但依然也實現了想要的結果。

這只是乙個小的例子,至於具體使用什麼,還的看專案的具體情況和需求。

簡單的繼承

繼承 特性 1.子類擁有父類非private的屬性和方法 2.子類可以擁有自己的屬性和方法,即子類可以對父類進行擴充套件 3.子類可以用自己的方式實現父類的方法 4.單一繼承,多層繼承 5.提高了耦合性 this 當前物件的引用 實際是乙個類 super 當前物件的父類引用 只是呼叫的功能,並不是乙...

程式中的繼承 單繼承,多繼承 簡單的介紹

定義乙個master類 class master object def init self 屬性 self.kongfu 古法煎餅果子配方 例項方法 def make cake self print 按照 s 製作了乙份煎餅果子.self.kongfu 定義prentice類,繼承了 master,...

js繼承的實現

1 繼承第一種方式 物件冒充 function parent username function child username,password var parent new parent zhangsan var child new child lisi 123456 parent.hello c...