1

私はC#を学ぶ初心者レベルです。通常、C++ では、クラスのメソッド/値にアクセスする必要がある場合、オブジェクト インスタンスを宣言する必要があり、オブジェクトを介してのみメソッドにアクセスできます。しかし、C#.Net では、オブジェクトを宣言する必要がない static public クラスについて知りました。class.method() 名を使用してメソッドを直接呼び出すことができます。メッセージボックスなどの標準クラス ライブラリ クラスを参照する場合、明確にしていただけますか。

System.Windows.MessageBox.ToShow()

System.Windows - その名前空間。
ToShow - そのメソッド
MessageBox - Messagebox はクラスかオブジェクトか?

クラスに属するメソッドのいずれかを参照すると、すべての標準 .NET クラス ライブラリの名前空間が、コンストラクターを介してオブジェクト インスタンスを内部的に作成すると私は信じています。その常にオブジェクト名は、コンストラクターによって作成されたクラス名と同じです。私の理解が間違っている場合は、plsが私を修正してください。

ありがとう、カリカラン

4

4 に答える 4

5

メッセージボックスはクラスです

http://msdn.microsoft.com/en-us/library/system.windows.messagebox.aspx

Showクラスの静的メソッドです。MessageBox形式で静的メソッドを呼び出すことができますClassName.MethodName

もう1つのことMessageBoxは、それがsealedクラスであるということです。シールクラスは継承できません。つまり、このクラスからカスタム クラスを派生させることはできません。

静的クラスとメソッドに関する詳細は、ここでうまく説明されています

于 2012-08-18T23:00:20.207 に答える
1

クラスに属するメソッドのいずれかを参照すると、すべての標準 .NET クラス ライブラリの名前空間が、コンストラクターを介してオブジェクト インスタンスを内部的に作成すると私は信じています。その常にオブジェクト名は、コンストラクターによって作成されたクラス名と同じです。

全くない。クラスから直接アクセスできるのは静的メソッドのみです。インスタンス メソッドを呼び出すには、クラスのインスタンス (つまりオブジェクト) が必要です。

于 2012-08-18T23:23:43.460 に答える
0
System.Windows.MessageBox.Show();

System.Windows is namespace 
MessageBox is a class
Show is a static method
于 2012-08-18T23:01:33.303 に答える
0

MessageBox はシール クラスであり、静的メソッドを持ちますToShow()。また、静的メソッドにアクセスするために、インスタンスを作成する必要はありません。

于 2012-08-18T23:03:16.067 に答える