簡介
在 Java 應用程式中,Java 類別是所有實作構造的基本建置區塊,例如 JavaBeans、EJB、Servlet 及 Applet。所有實作邏輯都在 Java 類別中提供。
類別是可用來建立物件的範本。類別中封裝資料結構及操作資料的演算法。類別通常就是製造物件的出處。
這些準則不詳細解釋類別或物件導向設計的概念。接下來的討論假設讀者已熟悉物件導向設計。如需物件導向設計的詳細討論,請參閱參考章節。
Java 類別特性
Java 類別包含:
-
成員函數
-
成員資料
-
靜態函數
-
靜態資料
-
繼承
-
介面的實作
成員函數實作一些關於個別物件的行為。成員函數在個別物件的環境內執行。
成員資料以一組變數宣告來定義物件的資料結構。最好只透過成員函數來存取成員資料。
靜態函數是在其定義的個別物件的環境之外執行的方法。
靜態資料屬於定義此資料的類別,而不屬於其定義的個別物件。在執行中的應用程式內,只存在一份靜態資料。雖然有些設計需要以實例來直接存取靜態資料,但通常只透過靜態函數來存取靜態資料。
Java 類別可以透過繼承來建立關係,以 Java 關鍵字 "extends" 來表示。繼承提供更準確的技術來重複使用程式碼,讓設計師將共同的資料結構和行為抽出放入超類別中,在子類別中只留下特殊的行為。
介面宣告一組方法,由類別來提供實作。一個類別可實作多個介面,而介面可由許多類別來實作。將介面和實作分開可以強化類別之間的隔離性。透過介面來存取物件,可以更單純地使用多型性。
指出 Java 類別
在 J2EE 應用程式中,可以指出 Java 類別來支援 J2EE 元素的設計。如需指出這些元素的相關資訊,請參閱下列準則:
指出其他 Java 類別的準則和指出其他各種類別的準則一樣。如需相關資訊,請參閱作業:identify_design_elements_real-time_design。
建模 Java 類別
Java 類別塑造為 UML 類別。
下圖顯示 Java 類別的 UML 表示法及相對應的 Java 原始程式碼。
|
class MyClass {
private int myMemberData;
private String myOtherMemberData;
private static int myStaticData;
public int getMyMemberData() {
return this.myOtherMemberData;
}
public static int getMyStaticData() {
return MyClass.myStaticData;
}
}
|
|