一桦锄、面向?qū)ο蠡A(chǔ)
? ? ? ? 1甫菠、java中一切都是對象
? ? ? ? ? ? ? ? java程序是由對象構(gòu)成的 不同對象之間相互調(diào)用形成業(yè)務邏輯蹦疑。
? ? ? ? 2蚓挤、類和對象的區(qū)別
? ? ? ? ? ? ? ? 類是模版商源,對象是類的具體實例车份。
? ? ? ? 3、面向?qū)ο蟮娜齻€特點
? ? ? ? ? ? ? ? 封裝:把數(shù)據(jù)封裝起來不讓外面訪問牡彻。
? ? ? ? ? ? ? ? 多態(tài):同一事情有許多做法扫沼,都可以吃但吃的方式不同。
? ? ? ? ? ? ? ? 繼承:動物都有血有肉有共同點。
? ? ? ? 4充甚、類包括 ? ? ? ? ? ? ? ?Phone
? ? ? ? ? ? ? ? 屬性 ? ? ? ? ? ? ? ? brand以政、model、price伴找、owner
? ? ? ? ? ? ? ? 行為(方法) ? call()盈蛮、text()
? ? ? ? ? ? ? ? 構(gòu)造函數(shù)(初始化方法)
二、訪問控制修飾符
? ? ? ? 修飾符 當前類 同一包內(nèi) 子孫類 其他包
? ? ? ? public ? ? ? Y ? ? ? ? ?Y ? ? ? ? ? ? Y ? ? ? ?Y
? ? ? ? protected ?Y ? ? ? ? ?Y ? ? ? ? ? ? Y ? ? ? N
? ? ? ? default ? ? ?Y ? ? ? ? ?Y ? ? ? ? ? ? N ? ? ? N
? ? ? ? private ? ? ?Y ? ? ? ? ?N ? ? ? ? ? ? N ? ? ? N
三技矮、static關(guān)鍵詞
? ? ? ? 實例變量(成員變量)需要創(chuàng)建了實例對象才會分配空間抖誉。
? ? ? ? 靜態(tài)變量(類變量)直接分配空間。
? ? ? ? 加了static 就是整個類的衰倦,變成類方法袒炉,用類名來訪問。
四樊零、final關(guān)鍵詞
? ? ? ? final加變量上我磁,變成常量。
? ? ? ? 加方法上驻襟,表示方法不能被覆蓋(override)夺艰。
? ? ? ? 加在類上,表示不能被繼承沉衣。
五郁副、構(gòu)造函數(shù)(constructor)
? ? ? ? 每個類都有一個空的構(gòu)造方法 名字跟class類名相同加括號。
? ? ? ? class Name{
? ? ? ? ? ? ? ? String name;
? ? ? ? ? ? ? ? public Name(String name){
? ? ? ? ? ? ? ? ? ? ? ? this.name=name;
? ? ? ? ? ? ? ? ? ? ? ? }
? ? ? ? ? ? ? ? }
? ? ? ? 每個類都有自己默認的構(gòu)造函數(shù)豌习,啥也不干存谎。
? ? ? ? 一個類可以有多個構(gòu)造函數(shù)。
六肥隆、getter和setter
? ? ? ? Source>>Generate Getters and Setters...可以自動創(chuàng)建get和set方法,可以對封裝的屬性進行讀取和更改既荚。
七、組合 ? ? ? ?
? ? ? ? 把另一個類的構(gòu)造函數(shù)當做變量類型來用栋艳。
八固以、封裝
? ? ? ? 把一個屬性定義為私有化,然后通過方法讓別人調(diào)用嘱巾。
九、重載诫钓、重寫和覆蓋
? ? ? ? 方法的重載是指在同個類中方法名相同參數(shù)不同旬昭。
? ? ? ? 方法的覆蓋是指在子類中寫一個與父類中方法名參數(shù)都相同的方法。
? ? ? ? 方法的重寫是指在子類中寫一個與父類中方法名相同但參數(shù)不同的方法菌湃,也就是子類的方法问拘。