C#
 Computer >> コンピューター >  >> プログラミング >> C#

C#のオブジェクト初期化子とは?使い方とサンプルコードをわかりやすく解説

C#ではオブジェクト初期化子を使うことで、クラスのオブジェクトを簡潔に初期化できます。

オブジェクト初期化子を利用すると、オブジェクトを生成するタイミングで、そのままフィールドやプロパティに値を代入することが可能です。コンストラクタを複数用意しなくても柔軟な初期化が行えるため、コードの可読性も大きく向上します。

次の例では、Employeeクラスのオブジェクトを作成すると同時に、波括弧( { } )の中で各プロパティへ値を一度に設定しています。

Employee empDetails = new Employee() {
    EID = 10,
    EmpName = "Tim",
    EmpDept = "Finance"
}

初期化したオブジェクトの値には、通常どおりドット演算子( . )でアクセスできます。たとえば、従業員名を取得したい場合は次のように記述します。

empDetails.EmpName

それでは、一連の流れを確認できる完全なコードを見てみましょう。

サンプルコード(完全版)

using System;
public class Demo {
    public static void Main() {
        Employee empDetails = new Employee() {
            EID = 10,
            EmpName = "Tim",
            EmpDept = "Finance"
        };
        Console.WriteLine(empDetails.EID);
        Console.WriteLine(empDetails.EmpName);
        Console.WriteLine(empDetails.EmpDept);
    }
}

public class Employee {
    public int EID { get; set; }
    public string EmpName { get; set; }
    public string EmpDept { get; set; }
}

実行結果

10
Tim
Finance

オブジェクト初期化子の主なメリット

  • コードが1文にまとまる:オブジェクト生成と値の代入を同時に記述できるため、処理の意図がひと目でわかります。
  • コンストラクタの乱立を防げる:組み合わせごとにコンストラクタを複数定義する必要がなく、保守性が向上します。
  • 匿名型でも必須の構文:匿名型(anonymous type)を作成する際にも同じ書き方が使われるため、覚えておくと応用範囲が広がります。

このように、C#のオブジェクト初期化子は日常的な開発で頻繁に活用される便利な構文です。ぜひ実際のコードでも活用してみてください。

  1. JavaScriptのオブジェクトメソッドとは?基本の考え方とアクセス方法を解説

    JavaScriptにおけるメソッドとはJavaScriptにおける「メソッド」とは、オブジェクトに対して実行される動作(アクション)のことです。メソッドはオブジェクトのプロパティの一種であり、文字列や数値などのデータと同じように、オブジェクトの中に関数として格納されます。例えば、従業員(employee)オブジェクトを考えてみましょう。「名前:Amit」「部署:Marketing」「社員ID:001」といった情報がプロパティとして格納されているように、それらの情報を組み合わせて表示する処理も、detailsのようなメソッドとして持たせることができます。オブジェクトメソッドへのアクセス方法Ja

  2. JavaScriptのオブジェクト初期化子とは?使い方をサンプルコードで解説

    オブジェクト初期化子とは オブジェクト初期化子(Object Initializer)は、新しく生成したオブジェクトを初期化するための式です。波括弧 {} の中に、「プロパティ名」と「それに対応する値」のペアを0個以上、カンマ区切りで列挙して記述します。 これにより、変数宣言と同時にオブジェクトの中身を簡単に定義することができます。 以下は、JavaScriptでオブジェクト初期化子を使用したサンプルコードです。 サンプルコード <!DOCTYPE html> <html lang="en"> <head> <meta chars