MENU

C#クラス間での値の受け渡し

C#でプログラミングを始めたばかりの方や、オブジェクト指向プログラミングに慣れていない方にとって、クラス間でどのように値を受け渡すか悩むことがあるでしょう。この記事では、C#におけるクラス間での値の受け渡し方法について、初心者の方にも分かりやすく解説します。

目次

クラス間での値の受け渡し方法

C#でクラス間で値を受け渡す主な方法には以下があります:

  1. メソッドの引数と戻り値を使用する
  2. プロパティを使用する
  3. コンストラクタを使用する

それぞれの方法について、具体的な例を見ていきましょう。

1. メソッドの引数と戻り値を使用する

最も一般的な方法は、メソッドの引数と戻り値を使用することです。

public class Sender
{
    public int GetValue()
    {
        return 42;
    }
}

public class Receiver
{
    public void ReceiveValue(int value)
    {
        Console.WriteLine($"受け取った値: {value}");
    }
}

class Program
{
    static void Main(string[] args)
    {
        Sender sender = new Sender();
        Receiver receiver = new Receiver();

        int value = sender.GetValue();
        receiver.ReceiveValue(value);
    }
}

この例では、SenderクラスのGetValueメソッドが値を返し、ReceiverクラスのReceiveValueメソッドがその値を受け取ります。

2. プロパティを使用する

プロパティを使用すると、クラス間で値を簡単に共有できます。

public class DataHolder
{
    public int SharedValue { get; set; }
}

public class Worker
{
    public void ProcessData(DataHolder data)
    {
        data.SharedValue *= 2;
        Console.WriteLine($"処理後の値: {data.SharedValue}");
    }
}

class Program
{
    static void Main(string[] args)
    {
        DataHolder dataHolder = new DataHolder { SharedValue = 10 };
        Worker worker = new Worker();

        worker.ProcessData(dataHolder);
    }
}

この例では、DataHolderクラスがSharedValueプロパティを持ち、Workerクラスがそのプロパティにアクセスして値を変更しています。

3. コンストラクタを使用する

クラスの初期化時に値を渡す場合は、コンストラクタを使用します。

public class ConfiguredWorker
{
    private int _configValue;

    public ConfiguredWorker(int configValue)
    {
        _configValue = configValue;
    }

    public void DoWork()
    {
        Console.WriteLine($"設定値 {_configValue} で作業中");
    }
}

class Program
{
    static void Main(string[] args)
    {
        int config = 100;
        ConfiguredWorker worker = new ConfiguredWorker(config);
        worker.DoWork();
    }
}

この例では、ConfiguredWorkerクラスのコンストラクタで設定値を受け取り、内部のフィールドに保存しています。

まとめ

C#でクラス間で値を受け渡す方法には主に以下があります:

  1. メソッドの引数と戻り値を使用する:一時的な値の受け渡しに適しています。
  2. プロパティを使用する:クラス間で値を共有する場合に便利です。
  3. コンストラクタを使用する:クラスの初期化時に値を設定する場合に使います。

これらの方法を適切に使い分けることで、クラス間で効率的に値を受け渡すことができます。初心者の方は、まずはメソッドの引数と戻り値を使用する方法から始め、徐々に他の方法も試してみるとよいでしょう。実際にコードを書いて動作を確認することで、理解がより深まります。

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

コメント

コメントする

目次