インスタンスメソッドと静的メソッドの違いは何ですか?

インスタンスメソッドと静的メソッドに違いはありますか? 多くの人にとって、これは愚かな質問です。これらの違いは誰もが知っているので、インスタンス メソッドは、this キーワードを使用して取得できる特定のコンテキスト オブジェクトに対して動作します。静的メソッドは特定の型で定義され、コンテキスト オブジェクトの概念はありません。しかし、関数の観点から見ると、静的メソッドであろうとインスタンスメソッドであろうと、入力パラメータを処理する操作であることに違いはないようです。

例として、整数をカプセル化する次の IntValue 型を考えます。これには 2 つの AsInt32 メソッドがあります。インスタンス メソッドは、現在の InValue オブジェクトの _value フィールドを返します。静的メソッドは、IntValue オブジェクトをパラメータとして受け取り、オブジェクトの _value フィールドを返します。 。私たちの質問は、これら 2 つの AsInt32 メソッドに違いはあるのかということです。

var target =新しいIntValue(123); 
target.AsInt32(); 
IntValue.AsInt32(ターゲット); public class IntValue 
{ private readonly int _value;
    public IntValue( int value ) => _v

 
       

おすすめ

転載: blog.csdn.net/shengyin714959/article/details/131640824