此篇文章簡介如何實作物件導向程式碼
程式實作:
所謂的class指的是由
*資料成員-包括常數與欄位。
*函數成員-包括方法、屬性、事件、索引運算符號、運算符號、建構元與解構元。
*巢狀型別-流程控制等。
等三類成員所組成的一種資料結構。
(一)類別宣告與定義語法:類別相當於在定義一種資料型態的藍圖。任何一個類別的定義,都是一種新的資料型態,未來任何以此資料型態宣告的變數,就是一個物件;同時藉由定義的類別,而此類別可以延伸使用繼承、interface等功能。
例如:下列為一個類別,名稱為Circle,屬於公開的類別,任何人都可存取(未來會提到),這類別裡面有3個方法。
public class Circle
{
//定義儲存狀態資訊用的field
double radius; //儲存半徑資料的識別字
//定義operation
void setRadius (double xRadius) //設定半徑資料
{
radius = xRadius;
}
void showRadius() //顯示圓的半徑
{
System.Console.Write(“半徑為:” +radius);
}
double showArea() //計算圓的面積 πr r
{
return Math.PI * Math.pow(radius, 2);
}
}
(二)建立一個物件:使用new運算符號是最常用方式。建構一個物件須完成兩個步驟:
1.宣告一個識別字來作為指向物件的reference,且使用類別名稱作為該識別字的資料型態。
à Circle ball;
這個宣告用途,只是準備一個reference identifier(指向某一物件的識別字),基本上就只是在stack記憶體中配置出來一個位置,其內容則未定。
2.創造一個屬於Circle類別的object,則需再加上一道用new運算符號所構成的運算式:
àball = new Circle(); //物件誕生
這道敘述會在記憶體中實際地建構出一個Circle物件,其中的Circle()稱為Constructor(建構元)-與類別有相同的名稱,加上與方法一樣的一對()的函數。利用new運算符號建構物件這個動作稱為instantiation(實體化,具體化)。
所以建立一個物件,則使用上述兩步驟即可完成。
留言
張貼留言