首頁  >  文章  >  後端開發  >  C# 中的對象

C# 中的對象

王林
王林原創
2024-09-03 15:04:20608瀏覽

以下文章提供了 C# 中物件的概述。眾所周知,C# 是一種物件導向的程式語言,發音為 C Sharp。儘管 C# 是從 C++ 發展而來的,但兩者還是有區別的。透過 C++ 與 C# 可以了解基本差異。

物件是類別的實例。這裡動態分配記憶體以提供給定程式的輸出。那麼,我們要如何解釋這種動態分配呢?創建物件是為了存取類別下定義的不同函數或變數。因此,物件不知道它實際上要存取哪種資料類型。所以從被存取的元素中取得值後,它會動態地安排記憶體。

建立物件

一般來說,一個物件可以透過兩種方式創建。其中之一是使用“new”命令。

物件的一般語法如下:

Class-name object-name = new Class-name();

然後,透過使用物件名稱,我們可以存取類別中定義的對應方法和變數。

定義物件的另一種方法是引用另一個物件。比如賦值之類的。

代碼:

Class-name object-name1 = new Class-name();
Class-name object-name2;
Object-name2=object-name1;

我們可以使用物件 object-name1 和 object-name2 來存取類別中的變數和方法。

C# 中的物件範例

這裡我們將為在 C# 中建立物件的每種方法提供一個範例。

下面是一個求數字平方的程式。

代碼:

using System;
class Square
{
public int side;
public Square(int a)
{
side=a;
}
public int Sq()
{
return side*side;
}
}
class First
{
static void Main(String [] args)
{
int result;
Square s= new Square(4);
result=s.Sq();
Console.WriteLine("Square of the given number is " + result);
}
}

輸出:

C# 中的對象

  • 我們建立了一個 Square 類,並在類別中寫了兩個函數。其中一個函數也是建構函數(函數名稱與類別名稱相同),用於輸入數字的值,另一個函數用於執行實際操作。
  • 在我們的 First 類別中,裡面有 main 函數,我們已經初始化了我們的物件 's' 並傳入了參數,我們實際上想要對其執行平方運算。
  • 並且我們宣告了一個變數 result;我們正在傳遞物件存取方法「Sq」的輸出,該方法執行實際操作。
  • 最後,在我們的控制台中輸出平方結果。

我們下一種建立物件的方法,範例如下:

代碼:

using System;
class Square
{
public int side;
public Square(int a)
{
side=a;
}
public int Sq()
{
return side*side;
}
}
class First
{
static void Main(String [] args)
{
int result1,result2;
Square s1= new Square(4);
Square s2;
s2=s1;
result1=s1.Sq();
result2=s2.Sq();
Console.WriteLine("Square of the given number is " + result1);
Console.WriteLine("Square of the given number is " + result2);
}
}

輸出:

C# 中的對象

對此的擴展,我們甚至可以使用物件來為變數賦值。讓我們看看如何做到這一點。

代碼:

using System;
class Square
{
public int Side;
public Square(int side)
{
Side=side;
}
public int Sq()
{
return Side*Side;
}
}
class First
{
static void Main(String [] args)
{
int result1,result2,result3;
Square s1= new Square(4);
Square s2= new Square(6);
result1=s1.Sq();
result2=s2.Sq();
s2.Side=7;
result3=s2.Sq();
Console.WriteLine("Square of the given number is " + result1);
Console.WriteLine("Square of the given number is " + result2);
Console.WriteLine("Square of the given number is " + result3);
}
}

在這裡,我們訪問了變數並將其值從 6 更改為 7。然後在將值初始化為新變數結果 3 後列印輸出。

輸出:

C# 中的對象

到目前為止,我們已經創建了一個物件並透過單一文字格式引用它。現在讓我們看看如果我們需要一個物件數組來儲存和操作我們的資料會怎麼樣。

代碼:

using System;
class Square
{
public int Side;
public void Sqr(int side)
{
Side=side;
}
public int Sq()
{
return Side*Side;
}
}
class First
{
static void Main(String [] args)
{
int result1,result2,result3;
Square[] sq = new Square[3];
sq[0]= new Square();
sq[1]= new Square();
sq[2]= new Square();
sq[0].Side=13;
sq[1].Side=85;
sq[2].Side=25;
result1=sq[0].Sq();
result2=sq[1].Sq();
result3=sq[2].Sq();
Console.WriteLine("Square of the given number is " + result1);
Console.WriteLine("Square of the given number is " + result2);
Console.WriteLine("Square of the given number is " + result3);
}
}

在上面的程式中,和之前一樣,我們建立了一個物件數組,並為每個物件分配了一個值。然後我們執行第二個函數來產生兩個數字的平方。

輸出:

C# 中的對象

作為練習,您可以嘗試使用物件陣列來載入 3 個科目的 5 個學生的分數嗎?

結論

如上所示,我們已經以不同的方式成功創建了一個對象,並使用它為變數賦值並調用類別中存在的函數。但在這裡,我們需要了解並遵循一些基於存取修飾符的規則。物件無法使用屬於另一個類別的「private」存取修飾符存取變數/函數。但可以存取相同的類別變數或函數,儘管使用 private 修飾符聲明。這樣,就有了一組針對類別、變數、函數和物件定義的規則。嘗試使用不同的存取修飾符以不同的方式建立對象,並檢查輸出以了解對象的範圍並繼續學習。

以上是C# 中的對象的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
上一篇:C# 中的迭代器下一篇:C# 中的迭代器