C為什麼不能在類中呼叫另類的變數,而必須是在方法裡例項化後的呼叫

2021-04-01 08:04:52 字數 3864 閱讀 4891

1樓:匿名使用者

你自己把自己都說進去了,你都說在classb中,是在執行b的**,如果要呼叫版x,就要先把classa給例項化,權讓編譯器知道你在用a了,才可以呼叫a中的x;你這不是承認可以這樣呼叫嗎?這個樓主反應的問題不是矛盾嗎?

其實是例項化a後沒有辦法呼叫a的成員,因為類的成員只有方法,欄位,屬性,索引等,這樣的呼叫根本無法被呼叫這個類的類所引用.

2樓:我是誰啊

在類b中使用類a中的變數,不寫在方法裡沒有任何意義

c#怎麼在一個類中呼叫另一個類的變數?

3樓:匿名使用者

(1)如果兩個類沒有繼承關係,存取另一個類中變數的方法如下:

public class a

// 在類b中使用類a中的變數

public class b

}請特別注意「類變數」和「例項變數」的差異!

(2)如果兩個類有繼承關係,存取基類中變數的方法如下public class a

public class b : a

, ", base.y, base.z);    }}

4樓:匿名使用者

在這裡dlist是一個list陣列,陣列存放的物件為datalist,應用舉例如下:

public listdatatabletolist(datatable a)

5樓:匿名使用者

參考如下**:

class b

; // class b只有一個帶引數的建構函式private:

int m_i;};

class a;

b m_b;};

6樓:匿名使用者

c#區分大小寫的。屬性是myname吧?

7樓:匿名使用者

例項化你要引用的類,你的類中屬性要區分大小寫

8樓:匿名使用者

定義為靜態的,在public 後面加上一個static

9樓:匿名使用者

首先在一個類中包含將被呼叫類的標頭檔案或用class宣告被呼叫類資訊,構造一個被呼叫類的物件,就可以呼叫。如:

class one

;class two

10樓:屋有

在另一類中做介面方法

getset

如何在c#中,在一個類裡呼叫另外一個類的方法

11樓:冰凍了你呢

把a類你有引用的方法加static

public class a

}public class b

}【拓展資料】

c#是一個物件導向的程式語言。這種程式設計模式關注的是物件的行為和屬性。比如貓抓老鼠這個例子中:貓和老鼠都是物件,用兩個類表示:貓類cat,老鼠類mouse。

貓表現出了兩種行為:聽(老鼠的叫聲)listen(mouse)和抓(老鼠)catch(mouse);至少一種屬性:行動速度speed。

老鼠表現出了一種行為:叫chitter;至少一種屬性:叫聲的大小loudness。

這樣的話可以如下定義兩個類:using system;class cat

public void catch(mouse m)     public float speed }class mouse     public float loudness }

實現貓抓老鼠的過程,就是例項化上述兩個類,並呼叫相關方法。編碼如下:

using system;  // 引用名字空間

class cat   // 行為(方法):聽老鼠叫

public void catch(mouse m)   // 行為(方法):捉老鼠

public float speed   // 屬性:捉老鼠時的行動速度

}class mouse   // 行為(方法):叫

public float loudness   // 屬性:叫聲的大小

}class program}

12樓:匿名使用者

public partial class form1 : formint z = 0; //在同一個類中不需要修飾詞就可以了private void but_ok_click(object sender, eventargs e)

private void timer1_tick(object sender, eventargs e)

13樓:匿名使用者

一種是建立窗體物件的方式,通過物件呼叫控制元件或方法例如:form1 form1 = new form1();

form1.button; //呼叫控制元件form1.method(); //呼叫方法123

當然了,控制元件的modifiers屬性要設定成public另一種是不建立窗體物件

在form1類下定義靜態變數,構造方法中引用這個form1class form1: form

public void method()

}123456789101112131415呼叫該窗體的控制元件或方法:

form1.form1.button;form1.form1.method()。

14樓:大冬子

//你新建的類a

public class a

}//視窗類

public class form1}

15樓:萬年——腐屍

假設我要在ab類中呼叫ub的屬性和方法。

class ub

}class ab

16樓:匿名使用者

你這個有錯誤。

b類中的a類沒有例項化,要報錯。

class b

17樓:mickal小米

如果要通過類名來用方法的話,那其中的方法必須是靜態方法,需加上static。

即public static void get() 。靜態方法是跟類關聯的,允許不對classa例項化,就可以用它的方法

18樓:呂建鷗

new 一個物件啊,在b類中建立一個a類的物件不就可以了

c#中同一個類中的方法互相呼叫需要將類例項化麼

19樓:匿名使用者

同一名稱空間,不同類可以互相呼叫,不在同一個名稱空間的,引用名稱空間後,也可以呼叫。

不在乎你寫在哪個檔案裡。只要你將它們放在同一個專案中,保證生成的dll裡面有這些類就可以了,或者你載入了這些類的dll。

類之間的真正關連是生成在dll裡的,.cs檔案只是**的載體,就好象你執行一個程式,其實根本不需要源**一樣。

c# 如何在一個類中呼叫另一個類的屬性和方法? 10

20樓:匿名使用者

你這個有錯誤。

b類中的a類沒有例項化,要報錯。

class b

21樓:mickal小米

如果要通過類名來用方法的話,那其中的方法必須是靜態方法,需加上static。

即public static void get() 。靜態方法是跟類關聯的,允許不對classa例項化,就可以用它的方法

22樓:萬年——腐屍

假設我要在ab類中呼叫ub的屬性和方法。

class ub

}class ab

23樓:

如果只是為了呼叫a類的方法最好不要這樣設計。

你可以用繼承、者靜態方法或者委託來實現。

C能在類中建立另類的例項嗎,C 能在一個類中建立另一個類的例項嗎

operator 關鍵字用於宣告運算子。explicit 關鍵字用於宣告必須使用強制轉換來呼叫的使用者定義的型別轉換運算子。implicit 關鍵字用於宣告隱式的使用者定義型別轉換運算子。就題主的例子而言,convclass1 型別物件是可以隱式轉換成 convclass2 型別物件的,例如 con...

如何在C中,在類裡呼叫另外類的方法

把a類你有引用的方法加static public class a public class b 拓展資料 c 是一個物件導向的程式語言。這種程式設計模式關注的是物件的行為和屬性。比如貓抓老鼠這個例子中 貓和老鼠都是物件,用兩個類表示 貓類cat,老鼠類mouse。貓表現出了兩種行為 聽 老鼠的叫聲 ...

c 中,定義的類中成員可以是函式的呼叫嗎?可以是變數之間的

沒太看懂你的問題,建議對類的概念再體會體會。類中主要由兩部分構內 成 成員變數和成員函容數。變數描述類的屬性,而函式則是類的功能。當然,成員變數也可以是其他類的物件,你也可以在成員函式中呼叫其他類的公有成員函式,這些屬於類與 類之間的組合和依賴。建議寫幾個類封裝的程式,再用類建立多個物件,體會類與物...