類別成員

類成員分為兩大類:資料成員與函式成員

前面章節介紹過的 int、long、short 都屬於簡單型別,這些是 .NET 內建的原生型別;由微軟開發人員預先撰寫完成並封裝在 .NET 框架內。安裝 Visual Studio 2022 時會一併安裝 .NET,當中就包含這些內建簡單型別,每一類只能存放單一筆資料。

後續章節會介紹其他可存放多筆資料的型別,陣列就是最常見的例子。陣列用來存放多個同型別資料,例如多個整數 int,陣列中每一個獨立資料稱為元素,我們透過索引值存取對應元素,陣列的完整用法會在後續課程詳細說明。

另外還有複合型別,可以同時存放多個不同型別的資料項目,這些獨立資料項目統稱為成員,存取成員時必須指定該成員的自訂名稱。

成員分為兩種:資料成員、函式成員。

資料成員:用來儲存與類別實例物件、或是整個類別相關聯的數據

函式成員:負責執行程式邏輯,定義該型別所能提供的各項行為操作

下方 Person 類別內定義了兩個資料成員

class Person
{
    private string name;
    private int age;

    public void SayHi() 
    {

    }

    public void SetMyName(string name)
    {
        this.name = name;
    }
}Code language: PHP (php)

資料成員(欄位 / 屬性):負責儲存物件狀態,好比使用者類別當中的姓名、年齡

函式成員(方法):負責定義物件行為,像是修改使用者姓名、對外部輸出問候語等功能

陣列透過數字索引存取;類別成員則透過開發者自訂名稱存取


class Program
{
    static void Main(string[] args)
    {
        // This is a int array
        int[] array = new int[5] { 1,2,3,4,5 };
        Console.WriteLine(array[0]); // 1

        Person person = new Person();
        person.SetMyName("John");
        person.SetMyAge(30);
        person.SayHi(); // Hi, my name is John and I am 30 years old.
    }
}

class Person
{
    private string name;
    private int age;

    public void SayHi() 
    {
        Console.WriteLine($"Hi, my name is {name} and I am {age} years old.");
    }

    public void SetMyName(string name)
    {
        this.name = name;
    }

    public void SetMyAge(int age)
    {
        this.age = age;
    }
}Code language: PHP (php)

上面範例建立一組整數陣列,內含五個元素,初始值分別為 1、2、3、4、5。若要讀取第一筆元素,必須使用索引 0,請記得陣列索引是從 0 開始計數。

而類別成員則是透過「物件名稱.」的語法搭配自訂名稱來存取,範例中即為 person。

Class Person { } 這段程式碼僅是類別定義,內部程式碼不會自動執行,必須由其他地方呼叫調用才會運作;若全程沒有呼叫,它就只是一份藍圖、樣版存放於專案中,永遠不會產生任何作用。

但程式進入點 Main 函式屬於靜態函式(後續會詳細解釋),不用建立物件就能直接使用,歸屬於類別本身。使用者雙擊 exe 執行檔啟動程式時,作業系統會自動呼叫這個 Main 函式。

類別成員

Previous:

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *