Menggunakan bidang objek sebagai parameter fungsi bidang lain [duplikat]
Dimungkinkan menggunakan bidang objek baru sebagai parameter fungsi bidang lain (dalam inisialisasi objek yang sama)?
List<Reservations> reservations = new List<Reservations>()
{
new Reservations{title="Grooming", className=checkColor(title)},
};
public string checkColor(string title)
{
...
}
Jawaban
Sisir
Ini tidak mungkin dengan desain kode Anda saat ini. Alasannya adalah, Anda tidak dapat mereferensikan 1 bidang objek di bidang lain sebelum objek tersebut sepenuhnya dibangun. Itu sama dengan mengapa kita tidak dapat menggunakan 1 nilai bidang di tempat lain saat mendeklarasikan sebagai variabel tingkat kelas.
Namun, ada cara untuk mencapai apa yang Anda inginkan.
Pilihan 1:
const string titleText = "Grooming";
List<Reservations> reservations = new List<Reservations>()
{
new Reservations{title=titleText, className=checkColor(titleText)},
};
private static string checkColor(string title)
{
...
}
Pilihan 2:
class Consumer
{
List<Reservations> reservations = new List<Reservations>()
{
new Reservations{title="Grooming"}
};
}
class Reservations
{
string _title;
public string title
{
get
{
return _title;
}
set
{
_title = value;
className = checkColor(title);
}
}
public string className;
private string checkColor(string title)
{
return "";
}
}
Kiat Pemilik Anjing yang Bermanfaat: Mengapa Penting untuk Membiarkan Anjing Anda Mengendus di Jalan
Taylor Sheridan Baru Menambahkan 1 Bintang 'Yellowstone' Favoritnya ke Pemeran 'Lawmen: Bass Reeves'