java筆記第五天面向對象

定義類:

           類是一羣對象方法的抽象集合,比如人類是一個類,而人則是人類的實例,實實在在的東西,人類則是一個抽象的說法,人的行爲則是方法。

           一個源文件裏可以定義多個類,但只能有一個類使用public修飾符修飾,因爲java文件名必須與public修飾的類名相同,所以一個源文件當中只允許出現一個public              修飾的類

類的成員變量:

                    類的成員變量直接在類體裏面定義,不要定義在方法體內,否則就成爲了局部變量。

                    靜態成員變量:使用static修飾的成員變量則屬於靜態變量,靜態變量屬於該類,並不屬於類的某個實例,因此靜態變量也叫類變量。

                    變量的調用:靜態變量直接使用類名爲前綴調用,成員變量則需要創建該類的一個對象,然後通過對象進行調用。

                    需要指出的是,在同一個類中,雖然可直接調用變量,但要注意的是,靜態成員無法直接訪問非靜態成員,反之,非靜態也無法直接訪問靜態,靜態訪問非                     靜態需要先創建一個該類的實例,非靜態調用則需要加上類名前綴               

類的方法體:

                  方法就相當於一個行爲,方法體裏面可包含任何可執行語句,程序的各種行爲就是通過方法來實現的。

                  靜態方法定義:同樣在方法體前的修飾符裏添加static關鍵,則該方法屬於該類,也稱類方法,調用方法同類變量一樣。

                   非靜態方法定義:與靜態沒什麼大的區別,去掉static就行。

注:在java裏面永遠不允許靜態成員直接訪問非靜態成員。

this關鍵字用法:

                       this關鍵字用於指向引用的對象,誰調用了該方法那麼this就指向誰,比如一個類裏面有eat和jump方法,現在要在jump方法裏使用eat方法,此時則無需使                        用類名加方法名來調用了,只需this.eat();便可以了。

方法的形參可變:

                        如果在定義一個方法時在最後一個形參類型的後面加上三個點則表明該方法可接收多個該類型的參數。

方法的遞歸:

                  一個方法在方法中調用自己便稱爲方法遞歸。

                    比如定義一個方法是求一個數的平方根,然後我在該方法中再次調用該方法,則會一直求根下去,因此,在使用遞歸的時候必須給方法一個出口。

方法重載:

               方法重載是後面所要學的多態的一個重要條件。

               方法重載就是多個方法之間方法名相同,但形參不同。

 方法的重寫:當一個子類繼承了父類的時候,也就繼承了父類裏面的屬性和方法,當子類覺得父類的某個方法不好的時候就可以進行方法重寫。

                    方法重寫時,方法名包括形參列表必須相同,訪問權限必須等於或者大於父類的訪問權限,其他的必須與父類的一致,然後才能對方法體進行重寫,當重寫                     了父類的方法之後,在子類調用方法時則默認調用重寫之後的方法,而當這時需要使用父類重寫之前的方法時便可用super關鍵字,該關鍵字直接指向該類的                      超類。

封裝:

        封裝是面向對象的三大基本特徵之一。

        封裝可以很好的保護程序的內部數據,使外部無法直接訪問該程序的內部數據。

        訪問控制符有四個關鍵字,權限從低到高依次是:private、default、protected以及public

        private:只允許當前內部類的成員進行訪問,就連子類也無法訪問

        default:在沒有添加任何訪問修飾符時,系統將默認使用這個訪問權限,該訪問權限只允許同一個包內的成員之間相互訪問。

        protected:允許不同包之間的子類訪問

        public:公共訪問權限,即任何包任何類都可以訪問,無論是否在一個包中以及是否有繼承關係



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