C# での get と set
このチュートリアルでは、C# での get と set を紹介します。
C# のプロパティ
プロパティは、入力、出力、および計算するためのメソッドを提供するパブリックフィールドです。C# のクラス内のプライベート変数の値。プロパティ名を書くための慣習は、それを公開に保ち、名前を大文字で始めることです。次のコード例は、C# でプロパティを作成する方法を示しています。
using System;
namespace Properties {
class P {
private string pname;
public string Name {
get { return pname; }
set { pname = value; }
}
}
class Program {
static void Main(string[] args) {
P obj = new P();
obj.Name = "This is his name";
Console.WriteLine(obj.Name);
}
}
}
出力:
This is his name
上記のコードでは、プライベート変数 pname とパブリックプロパティ Name を使用してクラス P を宣言しました。プロパティ Name は、プライベート変数 pname の値を設定および取得します。set と get は、それぞれ pname の値を入力および出力するために使用されます。これらの両方について、以下で説明します。
C# のプロパティの set アクセサー
set アクセサーは、C# のプライベートフィールドの値を入力するために使用されます。次のコード例は、set アクセサーを使用して C# のプライベート変数にデータを入力する方法を示しています。
using System;
namespace Properties {
class P {
private string pname;
public string Name {
set { pname = value; }
}
}
class Program {
static void Main(string[] args) {
P obj = new P();
obj.Name = "This is his name";
}
}
}
main 関数の obj.Name = "This is his name"によってデータを set アクセサーに渡します。この行は、set アクセサーの暗黙の変数 value 内に値 This is his name を渡します。value は、渡された値を表すプロパティ内の暗黙の変数です。
C# のプロパティの get アクセサー
get アクセサーは、C# のプライベートフィールドの値を出力するために使用されます。次のコード例は、get アクセサーを使用して C# でプライベート変数のデータを出力する方法を示しています。
using System;
namespace Properties {
class P {
private string pname;
public string Name {
get { return pname; }
set { pname = value; }
}
}
class Program {
static void Main(string[] args) {
P obj = new P();
obj.Name = "This is his name";
Console.WriteLine(obj.Name);
}
}
}
出力:
This is his name
C# のパブリックプロパティ Name のパブリック get アクセサーを使用して、プライベート変数 pname 内のデータにアクセスしました。上記のコードを省略形で記述しても、次のコードで同じ機能を実行することもできます。
using System;
namespace Properties {
class P {
public string Name { get;
set;
}
}
class Program {
static void Main(string[] args) {
P obj = new P();
obj.Name = "This is his name";
Console.WriteLine(obj.Name);
}
}
}
出力:
This is his name
このコードは、前に説明したコードと同じことを行います。パブリックセッターとプライベートフィールドのゲッターにアクセスする方法を提供します。上記のコードでは、値 This is his name を set アクセサーを使用してプロパティ Name に渡し、get アクセサーを使用して値を取得します。
Maisam is a highly skilled and motivated Data Scientist. He has over 4 years of experience with Python programming language. He loves solving complex problems and sharing his results on the internet.
LinkedIn