Java 面向?qū)ο竺嬖囍笇?dǎo)

更詳細(xì)Java面試請(qǐng)點(diǎn)擊這里


Java 面向?qū)ο蟊貢?huì)知識(shí)點(diǎn)

Java 的核心是面向?qū)ο缶幊蹋械?Java 程序都是面向?qū)ο蟮?。需要看?Java 的本質(zhì),從復(fù)雜的表象中尋找普遍的規(guī)律,并深刻理解 Java 的核心思想

面向?qū)ο蟮奶攸c(diǎn)總結(jié) 具體細(xì)節(jié)狂戳這里

面向?qū)€程序設(shè)計(jì)方法的優(yōu)點(diǎn)是:可重用性,可擴(kuò)展性,可管理性

  1. 封裝:隱藏在對(duì)象的屬性和實(shí)現(xiàn)細(xì)節(jié)僅對(duì)面提供公共的訪問方式。
  2. 繼承:在一個(gè)類的基礎(chǔ)上定義一個(gè)新類,原有的類叫父類,新生成的類叫子類。
  3. 多態(tài):事物存在多種體現(xiàn)的形態(tài),就是指一個(gè)引用(類型)在不同情況下的多種狀態(tài)。

類與對(duì)象特性總結(jié)

  1. 類與對(duì)象的概念:
    • 類是具體事物的抽象
    • 對(duì)象是該類實(shí)時(shí)存在的個(gè)體
  2. 類方法的特點(diǎn)
  3. 匿名對(duì)象:
    • 當(dāng)對(duì)象的方法只需使用一次時(shí),這樣寫代碼比較簡(jiǎn)單
    • 再則是將匿名對(duì)象作為參數(shù)傳遞
  4. 構(gòu)造函數(shù)與構(gòu)造代碼塊:
    • 構(gòu)造代碼塊是給所有對(duì)象統(tǒng)一初始化的,而構(gòu)造函數(shù)是給對(duì)象初始化的
    • 構(gòu)造代碼塊中定義的是共性的初始化內(nèi)容
  5. 接口
  6. Object 類

變量的特點(diǎn)總結(jié)

  1. 成員變量與局部變量:
    • 成員變量定義在類中,隨著對(duì)象的建立而建立,存在于對(duì)象的堆內(nèi)存中,都有默認(rèn)的初始化值
    • 局部變量只能定義在局部范圍內(nèi),比如函數(shù)內(nèi)、語(yǔ)句內(nèi)
  2. 實(shí)例變量與類變量:
    • 實(shí)例變量隨著實(shí)例的建立而建立且存在于堆內(nèi)存中
    • 類變量隨著類的加載而存在于方法區(qū)中
  3. 靜態(tài)變量:
  4. 變量的生命周期:
    • 類變量的時(shí)間最長(zhǎng),隨著類的消失而消失
    • 實(shí)例變量隨著對(duì)象的消失而消失

Java 面向?qū)ο笾R(shí)點(diǎn)精華

Java 面向?qū)ο?0個(gè)精華知識(shí)點(diǎn)

  1. 抽象、封裝、繼承、多態(tài)是面向?qū)ο蟪绦蛟O(shè)計(jì)中的四個(gè)特點(diǎn)
  2. 面向?qū)ο蟮密浖_發(fā)大體分為:面向?qū)ο蟮姆治觯嫦驅(qū)ο蟮脑O(shè)計(jì),面向?qū)ο蟮膶?shí)現(xiàn)
  3. 面向?qū)ο蟪绦蛟O(shè)計(jì)方法的優(yōu)點(diǎn)是:可重用性、可擴(kuò)展性、可管理性
  4. 類的定義:class 前的修飾符分為訪問控制符和非訪問控制符兩大類。訪問控制符包括 public 和 private。非訪問控制符包括 abstract(抽象)和 final(最終)
  5. final 類是最終類,是不能有子類的類。abstract 和 final 不能同時(shí)修飾一個(gè)類。因?yàn)槌橄箢惐旧頉]有具體對(duì)象,只能派生出子類后創(chuàng)建子類的對(duì)象;而最終類不可能有子類
  6. 創(chuàng)建對(duì)象的格式:類名 對(duì)象名 = new 構(gòu)造方法(參數(shù)),注意前面是類名后面是構(gòu)造方法;構(gòu)造方法主要是用于類對(duì)象的初始化工作,必須使用 new 運(yùn)算符調(diào)用
  7. 如果 class 前面由 public 修飾,則默認(rèn)的構(gòu)造方法前面也有 public 修飾
  8. 類中有 static 修飾符的域或者方法,可用類名或?qū)ο笤L問
  9. 修飾符的訪問控制符可以有:public 、protected 、private、private protected;非訪問控制符可以是:static、final、volatile(易失域)
  10. 類變量的最本質(zhì)特點(diǎn)是:他們是類的域,不屬于類的任何一個(gè)類的具體對(duì)象實(shí)例,共同享用
  11. 局部變量是在方法體類聲明的,只有當(dāng)方法被調(diào)用時(shí)他們才存在,因而只能在本方法內(nèi)使用,不存在訪問控制符,也不能聲明為靜態(tài)變量(static),但可以聲明為 final 變量。局部變量必須初始化,因?yàn)榫植孔兞柯暶髦?,虛擬機(jī)就不會(huì)自動(dòng)給它初始化為默認(rèn)值,局部變量在參與運(yùn)算前必須進(jìn)行賦值
  12. 修飾方法的訪問控制符可以是:public 、protected 、private、private protected;修飾方法的非訪問控制符可以是:static、final、abstract、native(本地方法)、synchronize(同步方法)
  13. 用 static 修飾的變量或者方法都為類成員,類成員可以用類名或?qū)嵗{(diào)用,實(shí)例成員只能用實(shí)例名調(diào)用
  14. 若一個(gè)類中含有抽象方法,則為抽象;如果抽象類的子類不為抽象類,則子類必須實(shí)現(xiàn)父類的抽象方法;抽象方法只有函數(shù)頭的聲明,用分號(hào)老代替方法體,即沒有大括號(hào)
  15. this 變量用在一個(gè)方法的內(nèi)部,指向當(dāng)前的對(duì)象,當(dāng)前對(duì)象指的是調(diào)用當(dāng)前正在執(zhí)行的方法的那個(gè)對(duì)象;super 變量是直接指向父類的構(gòu)造方法,用來(lái)引用父類中的變量和方法
  16. 如果要引用一個(gè)包的多個(gè)類,可以用 ※號(hào)代替;使用 ※只能表示本層次的所有類,而不包括子層次下的類。經(jīng)常需要兩條語(yǔ)句來(lái)導(dǎo)入兩個(gè)層次的類:
    import java.awt.※
    import java.awt.event.※
  17. 關(guān)于訪問修飾符
    • 類中限定為 public 的成員可以被所有的類訪問
    • 類中限定為 protected 的成員可以被本身、子類、以及用一個(gè)包下的其他類訪問
    • 類中限定為 private protected 修飾的成員可以被這類的本身,也可以被這個(gè)類的子類訪問
    • 默認(rèn)的訪問控制符規(guī)定只能被同一個(gè)包中的類訪問引用,不能被其他包的類訪問
    • 類中限定為 private 的成員只能被這個(gè)類本身訪問
  18. 重載方法的參數(shù)必須不同,或者是參數(shù)個(gè)數(shù)不同,或者是參數(shù)類型不同。重載多個(gè)方法必須返回相同的數(shù)據(jù)類型,且在一個(gè)類中。
  19. 在 Java 中,一個(gè)獲取某一接口定義的功能并不是直接繼承這個(gè)接口的屬性和方法來(lái)實(shí)現(xiàn)的。因?yàn)榻涌谥械膶傩远际浅A?,接口的方法都是沒有方法體的抽象方法,沒有具體定義操作
  20. 注意之處
    • abstract 和 private、static、final、native 不能并列修飾同一個(gè)方法
    • abstract 類中不能有 private 修飾的域和方法
    • static 方法不能處理非 static 的域
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容