java中三大基本特徵

來源:互聯網
上載者:User

標籤:

java中的物件導向的三大基本特徵是:【封裝】、【繼承】、【多態】

封裝:對象要有一個明確的邊界;邊界的劃分(對象各司其職、對象的粒度、對象的可重用性)

  • 屬性(bean、pojo):私人的private,有set和get方法
  • 方法:公開或私人 ,public/private
  • 方法聲明和實現(interface,implements)

繼承:共性放到父類,特性放到子類;子類,父類 --> 其實就是特殊 --> 一般

  • 關鍵字: extends
  • java中一個類最多隻能有一個直接的父類,即單繼承(具有簡單性、樹形結構)              tip:java中要實現多繼承,通過介面來實現。
  • 父類中所有屬性和方法都能繼承給子類;父類中的私人方法不能繼承給子類。
  • java中的存取修飾詞
    存取修飾詞 存取權限 繼承
    private 本類 不能繼承
    default 本類+同包 同包子類可以繼承
    protected 本類+同包+不同子包 可以繼承
    public 公開 可以繼承

 

  • 構造對象過程
  •      (1)分配空間
           (2)遞迴地構造父類對象
                  a. 父類 初始化屬性
                  b. 父類 構造方法
          (3)初始化屬性
          (4)調用構造方法

  • super
          super()  調用父類的構造方法,只能出現在構造方法的第一行
          super.方法名   super表示父類的對象,通過它去調用父類的方法
          注意:在寫類的時候,一定要寫預設無參的構造方法,如果一個構造方法的
                   第一句既不是this(),也不是super()時,那麼就會在這裡隱含的調用
                   他的父類的無參的構造方法,即隱含的有super()。

多態:運行時多態(子類的對象放在父類的引用中,例如 Animal a=new Dog,子類對象當父類對象來使用。)

  • 多態原則:
           (1)物件類型不變
           (2)只能用引用調用其參考型別中定義的方法
           (3)運行時,根據對象的實際類型去找子類覆蓋之後的方法
                 例子:
                      有Animal類中有eat()和sleep()兩個方法,sleep()中睡8小時;子類Dog中有
                      eat()方法,sleep()方法中睡6小時,還有wangwang()方法。
                      現建立Animal a=new Dog(); 不能調用a.wangwang(),調用a.sleep()輸出睡6小時。
  • 對象的強制轉換 :
                       格式: 引用 instanceof 類型
                            引用所指的對象是否與類相符,傳回值boolean值。
                     用法:
                           Animal a=new Cat();
                           if(a instanceof Dog)
                           {
                              Dog d=(Dog)a;
                              d.wangwang();
                            }
                     說明:如果只有Dog d=(Dog)a;執行階段錯誤,因為a是Cat而不是Dog (多態原則第一條)
  • 多態的靈活變換
           (1)用於參數列表上:
                                   public void m(A a){} 可以用A類的任何子類對象作為參數
            (2)用在傳回值上:
                                  public A m(){}  這個方法可能返回A類的任何子類對象
  •  

java中三大基本特徵

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.