1. 程式人生 > >java學習之路------第十一天

java學習之路------第十一天

今天我回我自己學校了,但是我晚上還是會整理筆記。

今天主要說了封裝,許可權修飾符,單例模式,和多型

 

一、許可權修飾符

public: 公共的

protected:受保護的

預設的:

private:私有的

作用域範圍:public在一個專案下都有用,protectd在本類,在子類,同一個包中都可以用,預設的只可以在本類和同一個包下可用,private只可以在本類可以用。

二、面向物件三大特徵之封裝

         封裝的定義非常廣泛,像方法也屬於封裝的一種,類也屬於封裝的一種,包等也屬於封裝的一種。在java中說到的封裝,多指用private修飾的成員變數或成員方法。

          封裝的意義:隱藏了具體的時下細節,僅對外提供公共的訪問方式。用關鍵字

          公共的訪問方式:public返回值型別  getxxx()/setxxx()

封裝的好處:

1.增加了安全性

2.提高了複用性

3.提高了維護性

4.將變化隔離,方便使用

備註:在實際開發過程中,所有的成員變數都是用private修飾,對外提供公共的訪問方法。

 

三、單例模式() 一夫一妻制      一個類只有一個物件

單例模式的三個特點:

1、單例類只能有一個例項。

2、單例類必須自己建立自己的唯一例項。

3、單例類必須給所有其他物件提供這一例項。

    經典的三種單例模式:

    1、懶漢式:什麼時候用到,什麼時候進行例項化物件

    2、餓漢式:先建立好物件,誰用誰呼叫

    3、登記式(不用)

怎麼實現一個類只有一個物件?

思路:將構造方法私有化(只有本類可以建立自身物件)

四、面向物件三大特性之多型

   理解:就是同一種事物在不同的形式下所表現出不同的形態

例:水  在零度溫度:冰      固態

              在常溫下:水        液態

   在100度以上:水蒸氣  氣態

多型的條件:

1.類之間必須要有繼承

2.成員方法必須有重寫

3.父類的引用指向子類的物件    Father f = new Son();

 

多型的執行過程:

                              編譯期                  執行期

    成員變數:        看型別                  看型別

    成員方法:        看型別                  看物件

    靜態方法:        看型別                  看型別

instanceof關鍵字:

                   A:用於判斷某個物件是否是某種型別。

                  B:格式:

                             物件名   instanceof  子類(實現)名

多型的好處和弊端:

       好處:增加了程式的可擴充套件性,提高了程式的維護性。

       弊端:操作時只能訪問父類的相關方法,不能訪問子類的成員方法

          (可以使用向下轉型解決該問題)