JAVA繼承的特性

繼承的特性

  • 子類擁有父類非private的屬性,方法。

  • 子類可以擁有自己的屬性和方法,即子類可以對父類進行擴展。

  • 子類可以用自己的方式實現父類的方法。

  • Java的繼承是單繼承,但是可以多重繼承,單繼承就是一個子類只能繼承一個父類,多重繼承就是,例如A類繼承B類,B類繼承C類,所以按照關係就是C類是B類的父類,B類是A類的父類,這是java繼承區別於C++繼承的一個特性。

  • 提高了類之間的耦合性(繼承的缺點,耦合度高就會造成代碼之間的聯繫)。

     

    1、爲什麼使用繼承

    從已有的類派生出新的類,稱爲繼承。

    在不同的類中也可能會有共同的特徵和動作,可以把這些共同的特徵和動作放在一個類中,讓其它類共享。

    因此可以定義一個通用類,然後將其擴展爲其它多個特定類,這些特定類繼承通用類中的特徵和動作。

    繼承是 Java 中實現軟件重用的重要手段,避免重複,易於維護,易於理解。 

     

    調用父類的構造方法的唯一途徑是使用 super 關鍵字,如果子類中沒顯式調用,則編譯器自動將 super(); 作爲子類構造方法的第一條語句。這會形成一個構造方法鏈。

    靜態方法中不能使用 super 關鍵字。

     

    class Base {
        public Base() {
            System.out.println("Base--默認構造方法");
        }
        
        public Base(int c){
            System.out.println("Base--有參構造方法--" + c);
        }
    }
    
    public class Derived extends Base {
        public Derived() {
            // super(); //系統會自動隱式先調用父類的無參構造函數 super(); //必須是第一行,否則不能編譯 
            System.out.println("Derived--默認構造方法");
        }
        
        public Derived(int c) {
            // super(); //系統會自動隱式先調用父類的無參構造函數 super(); //必須是第一行,否則不能編譯
            System.out.println("Derived--有參構造方法" + c);
    
    
     
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章