C# プログラミング チュートリアルのアクセス修飾子を読んだ後、メソッドを定義するだけで、同じ名前空間のpublic
別のメソッドから「見える」ようになるという結論に達しました。Form
ただし、実際には、これを実装しようとするたびに、同じ名前空間static
の他のものから参照できるようにメソッドを定義する必要もありました。Forms
私は何かを失っていますか?私は何か間違ったことをしていますか?
メソッドの場合public static
、オブジェクトへの参照は必要ありません。メソッドは静的であり、レベルでアクセスできclass
ます。
public メソッドにアクセスできない場合は、オブジェクトへの参照が必要ですが、アクセスできます。
public class AClass
{
public void DoSomething() {}
public static void DoSomethingElse() {}
}
次のように使用できます。
AClass.DoSomethingElse(); // no object reference required
AClass.DoSomething(); // will give compiler error, since you have no object reference.
var anObject = new AClass();
anObject.DoSomething(); // will work fine.
anObject.DoSomethingElse(); // compile error (thx hvd).
public static
メソッドはオブジェクトインスタンスを必要とせず、クラスのインスタンスを作成せずに使用できます
ClassName.MyStaticPublicMethodName()
(非静的) メソッドはpublic
クラスのインスタンスを必要とするため、パブリック (非静的) メソッドは一般に、オブジェクトのデータ メンバー (フィールド) を操作するのに役立ちます。
非静的パブリック メソッドを使用するには、クラスのインスタンスを作成する必要があります
ClassName obj = new ClassName();
obj.MyPublicMethod();