TujuanMemahami dasar penggunaan Properties dalam C# dengan konsep Get dan Set. Setelah mengikuti tutorial ini, kamu akan dapat menggunakan Properties untuk mengelola akses data secara aman dalam program berbasis OOP (Object-Oriented Programming).
KonteksDalam pemrograman OOP, data dalam objek biasanya tidak diakses secara langsung. Properties membantu mengatur akses data dengan lebih aman, memungkinkan kita untuk membaca (dengan Get) dan mengubah (dengan Set) nilai variabel dalam objek.
Hal yang DiperlukanLangkah-LangkahMembuat Class dengan Field Pertama, kita buat sebuah class sederhana dengan field privat untuk menyimpan data. Misalnya, class Person dengan field _name.
public class Person
{
private string _name; // Field privat untuk menyimpan data nama
}
Membuat Property dengan Get dan Set Selanjutnya, tambahkan Property untuk mengakses field _name. Property ini akan mengontrol bagaimana kita mengambil (Get) dan memberikan nilai (Set) pada _name.
public class Person
{
private string _name; // Field privat
// Property Name dengan Get dan Set
public string Name
{
get { return _name; } // Mengambil nilai _name
set { _name = value; } // Mengubah nilai _name
}
}
Dengan cara ini, kita dapat mengakses _name melalui Name secara aman.
Menggunakan Class dan Property Sekarang kita buat instance dari class Person dan gunakan Property untuk mengakses data.
class Program
{
static void Main(string[] args)
{
Person person = new Person(); // Membuat objek baru
person.Name = "John Doe"; // Set nilai dengan property
Console.WriteLine(person.Name); // Get nilai dari property
}
}
Output yang diharapkan:
John Doe
Menambahkan Validasi pada Property (Opsional) Keuntungan menggunakan Properties adalah kita dapat menambahkan logika tambahan, seperti validasi. Misalnya, kita ingin mencegah pemberian nama kosong.
public class Person
{
private string _name; // Field privat
public string Name
{
get { return _name; } // Get nilai _name
set
{
if (!string.IsNullOrEmpty(value)) // Validasi: nama tidak boleh kosong
{
_name = value;
}
else
{
Console.WriteLine("Name cannot be empty.");
}
}
}
}
Jika nama yang diberikan kosong, program akan menampilkan peringatan.
Menggunakan Auto-Implemented Properties Untuk cara yang lebih singkat, C# menyediakan Auto-Implemented Properties, yang langsung mendeklarasikan Property tanpa memerlukan field privat terpisah.
public class Person
{
public string Name { get; set; } // Auto-implemented property
}
Kesimpulan Properties di C# memudahkan kita untuk mengontrol akses data dalam objek dengan aman. Dengan Get dan Set, kita dapat menambahkan logika kontrol saat data diambil atau diubah, sehingga lebih fleksibel dan aman.
DocumentationDefinisi SelesaiKamu dianggap selesai jika: