1. 程式人生 > 其它 >Java學習筆記(23)

Java學習筆記(23)

面向過程&面向物件

  • 面向過程思想

    • 步驟清晰簡單,第一步做什麼,第二步做什麼......
    • 面對過程適合處理一些較為簡單的問題
  • 面向物件思想

    • 物以類聚,分類的思維模式,思考問題首先會解決問題需要哪些分類,然後對這些分類進
      行單獨思考。最後,才對某個分類下的細節進行面向過程的思索。
    • 面向物件適合處理複雜的問題,適合處理需要多人協作的問題!
  • 對於描述複雜的事物,為了從巨集觀上把握、從整體上合理分析,我們需要使用面向物件的思路
    來分析整個系統。但是,具體到微觀操作,仍然需要面向過程的思路去處理。

什麼是面向物件

  • 面向物件程式設計(Object-Oriented Programming,OOP)

  • 面向物件程式設計的本質就是:以類的方式組織程式碼,以物件的形式封裝資料。

  • 三大特性:

    • 封裝
    • 繼承
    • 多型
  • 從認識論角度考慮是先有物件後有類。物件,是具體的事物。類,是抽象的,是對物件的抽象

  • 從程式碼執行角度考慮是先有類後有物件。類是物件的模板。

類和物件的關係

  • 類是一種抽象的資料型別,它是對某一類事物整體描述/定義,但是並不能代表某一個具體的事物.

    • 動物、植物、手機、電腦......
    • Person類、Pet類、Car類等,這些類都是用來描述/定義某一類具體的事物應該具備的特
      點和行為
  • 物件是抽象概念的具體例項

    • 張三就是人的一個具體例項,張三家裡的旺財就是狗的一個具體例項。
    • 能夠體現出特點,展現出功能的是具體的例項,而不是一個抽象的概念.

建立和初始化物件

  • 使用new關鍵字建立物件
  • 使用new關鍵字建立的時候,除了分配記憶體空間之外,還會給建立好的物件進行預設的初始化
    以及對類中構造器的呼叫。
  • 類中的構造器也稱為構造方法,是在進行建立物件的時候必須要呼叫的。並且構造器有以下倆
    個特點:
    • 1.必須和類的名字相同
    • 2.必須沒有返回型別,也不能寫void
  • 構造器
    • 使用new關鍵字,本質是在呼叫構造器
    • 一個類即使什麼都不寫,也會存在一個方法(預設生成一個隱式的無參構造器)
    • 構造器一般用來初始化值
    • 在ideal中快捷鍵 alt+insert 生成構造器
  • 注意:一旦定義了有參構造,必須將無參構造顯式定義