1. 程式人生 > >Java——類與物件

Java——類與物件

面向物件程式設計正規化(C++,Java,Go語言)
能進行對現實生活的抽象每個物件(類)都有自己的屬性和方法

1.面向物件程式設計的三大特徵

a.封裝性:
將客觀事物封裝成抽象的類,每個類都有自己的屬性以及方法,並且類可以讓自己的方法和屬性只讓可信的類或物件操作,對不可信的進行資訊隱藏。
內部操作對外部而言不可見性(保護性)
b.繼承性:
可以使用現有類的所有功能,並且在無需重新編寫原有程式碼的情況下進行功能上的擴充套件。(可重用)
c.多型性:
指一個類例項的相同方法在不同的情況下有不同的表現形式
多型機制使得具有不同內部結構的物件可以共享相同的外部介面(利用多型可以得到良好的設計)

2.Java中類與物件的定義與使用

概念:
類是一個共性的概念,而物件是一個具體的,可以使用的事物。
先有類後有物件,物件的屬性與行為一定在類中進行了完整的定義。

類的產生語法:
class 類名稱{
屬性1;
屬性2;

構造方法(){ };
普通方法(){ };

}

private實現的封裝處理
作用:將屬性,方法用private封裝後表示,被封裝的屬性與方法只能在本類中使用,類外部不可見

要想訪問被封裝的屬性,必須提供getter和setter方法
setter方法主要進行屬性內容的設定與修改
getter方法主要進行屬性內容的取得
類的設定原則:編寫類的時候,沒有額外說明則所有屬性必須使用private封裝(成員變數)

private不可用於外部類,但可用於內部類

3.構造方法:(類中屬性初始化)

構造方法的三大特徵:
a.構造方法的名稱必須與類名稱相同,
b.構造方法沒有返回值的型別宣告
c.每個類中一定至少存在一個構造方法,如果沒有明確定義,系統自動生成無參構造方法,若在類中定義了構造方法,則預設構造方法不生成

注意:

  1. 構造方法過載:僅限於引數個數不同,引數型別不可變
  2. 定義屬性->定義構造方法->定義普通方法