首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> .NET 網頁程式設計 >> C# >> 關於C#

C# 面向對象程式設計核心概念與實作指南

     編輯:關於C#

從面向過程到面向對象的思維轉變

在面向對象程式設計(OOP)興起之前,幾乎所有程式都採用面向過程(OPP)的方式編寫:程式從入口點開始執行,按順序執行到達目的即結束。這類程式碼修改困難、重複利用率低。OOP 則將世界視為一系列實體(對象)的集合,每個對象封裝了屬性(數據)與行為(方法),極大提升了程式的模組化、可維護性與擴展性。

下表概略對比了兩種範式的核心差異:

面向過程編程示意圖

面向對象編程示意圖

類與對象:OOP 的基石

若您有 C++ 或 Java 經驗,對「類」與「對象」應不陌生。對象是應用程式的組成單元,封裝了數據與操作該數據的方法;類則是對象的藍圖,定義了成員(字段、屬性)與方法。在 C# 中,類可包含:

  • 字段:直接儲存對象的數據狀態。
  • 屬性:提供對字段的受控存取(get/set),屬於邏輯字段,不佔用實際記憶體空間,主要供外部呼叫。
  • 方法:定義對象的行為。

字段與屬性的定義範例

// 字段範例
class School
{
    public string schoolName; // 公開字段
}

// 屬性範例
class School
{
    private string _schoolName; // 私有備份字段
    public string SchoolName    // 公開屬性
    {
        get { return this._schoolName; }
        set { this._schoolName = value; }
    }
}

差異重點:屬性是字段的延伸,提供封裝與驗證機制;字段供類內部使用,屬性供外部存取。

實戰:Person 類完整示例

以下程式碼展示一個包含建構函式、方法與屬性操作的 Person 類:

class Person
{
    // 字段
    public string Name;
    public string Sex;
    public int Age;
    public double Weight;

    // 無參數建構函式
    public Person()
    {
        Name = "LFC";
        Sex = "man";
        Age = 1;
        Weight = 10;
    }

    // 多載建構函式
    public Person(string name, string sex, int age, double weight)
    {
        this.Name = name;
        this.Sex = sex;
        this.Age = age;
        this.Weight = weight;
    }

    // 方法:進食增加體重
    public void EatFood(double quantity)
    {
        this.Weight += quantity;
    }

    // 方法:推重物增加體重
    public void PushSth(double weight)
    {
        this.Weight += weight;
    }
}

// 使用範例
Person myWife = new Person();
Console.WriteLine(myWife.Weight); // 輸出初始體重
myWife.EatFood(22);
Console.WriteLine(myWife.Weight); // 輸出進食後體重
myWife.PushSth(3.2);
Console.WriteLine(myWife.Weight); // 輸出推重物後體重

本文發表於編程入門網:www.bianceng.cn

未完待續,請先自行練習 Person 類中不理解的部分。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved