Java 面向對象_5

                                                          JAVA面向對象_5

一.多態

    1.概念
        1.字面上,事物的多種形態
        2.本質:一個類的對象在編譯的時候並不明確使用哪個對象,只有在運行的時候才確定,父類引用數據類型指向子類的對象
    2.作用:
        提升對象的作用範圍
    3.條件
        3.1向上轉型
        3.2必須有繼承或者實現關係
    4.應用領域:
        4.1作爲參數傳入
        4.2作爲返回值

二.向上轉型

    父類的引用數據類型變量指向子類的對象
    變量的獲取以及使用:向上轉型後:
        注意的點:

             1.1 擁有相同的名字的普通成員變量(包括靜態變量)時,訪問的是父類的

             1.2 擁有相同名字的普通成員方法(非靜態方法時),訪問的是子類的

            1.3 擁有相同名字的靜態成員方法,訪問的是父類的

            1.4 父類的引用類型變量訪問不到子類特殊的成員


            如果我要訪問子類的特有成員,該怎麼辦?
            類型轉型
 
            強轉:轉換的兩者必須存在繼承或實現關係,否則不能進行。

三.懶漢式和惡漢式

    1.懶漢代碼:

 

        class Single{
    private int age;
    public int getAge(){
        return age;
    }
    public void setAge(int age){
        this.age=age;
    }
    private Single(){
        super();
    }
    private static Single s =null;

    public static Single getInstances(){
            if(s=null){
            s=new Single();
            }
            return s;
    }
}


    2.惡漢代碼:

   

  class Single{
      private int age;
      public int getAge(){
        return age;
      }
      public void setAge(int age){
        this.age=age;
     }
     private Single(){
        super();
     }
    private static Single s=new Single();

    public static Single getInstances(){
        return s;
    }
}  

四.JAVA中設計模式  

      1. 總體來說設計模式分爲三大類:

       創建型模式,共五種:工廠方法模式、抽象工廠模式、單例模式、建造者模式、原型模式。

       結構型模式,共七種:適配器模式、裝飾器模式、代理模式、外觀模式、橋接模式、組合模式、享元模式。

      行爲型模式,共十一種:策略模式、模板方法模式、觀察者模式、迭代子模式、責任鏈模式、命令模式、備忘錄模式、狀態模式、訪問者模式、中介者模式、解釋器模式。

       2.在處理某些情況下一種約定俗成,並且行之有效的方法
 
       3. 主要是爲了解決在計算機內存中某個類只存在一個對象這種情況
         裝飾者設計模式
         工廠設計模式
         代理設計模式



   

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章