Menu
CoddyTech

Property yang Diimplementasikan Otomatis

Termasuk bagian Pemrograman Berorientasi Objek dalam perjalanan C# di Coddy. Pelajaran 10 dari 70.

Property yang diimplementasikan otomatis memungkinkan kamu mendeklarasikan property tanpa menulis field pendukung secara eksplisit. Compiler secara otomatis membuat field privat tersembunyi di balik layar.

Daripada menulis kode yang panjang ini:

public class Product
{
    private string name;
    
    public string Name
    {
        get { return name; }
        set { name = value; }
    }
}

Kamu cukup menulis:

public class Product
{
    public string Name { get; set; }
    public decimal Price { get; set; }
    public int Quantity { get; set; }
}

Kamu juga bisa menetapkan nilai default langsung dalam deklarasi:

public class Product
{
    public string Name { get; set; } = "Unnamed";
    public decimal Price { get; set; } = 0.0m;
    public bool IsAvailable { get; set; } = true;
}

Property yang diimplementasikan secara otomatis sangat cocok saat kamu tidak memerlukan validasi atau logika khusus di getter atau setter. Property ini membuat class-mu tetap rapi dan mengurangi kode boilerplate secara signifikan.

challenge icon

Tantangan

Mudah

Mari kita buat sistem inventaris sederhana menggunakan property yang diimplementasikan otomatis untuk melacak barang di toko.

Kamu akan membuat dua file untuk mengatur kodemu:

  • Item.cs: Definisikan class Item di namespace Inventory dengan property yang diimplementasikan otomatis untuk Name (string), Price (decimal), dan InStock (bool). Tetapkan nilai default: Name harus memiliki nilai default "Unknown", Price 0.0m, dan InStock true.
  • Program.cs: Di file utamamu, buat dua object Item menggunakan object initializer. Baca nama dan harga setiap barang dari input, lalu cetak detail setiap barang.

Kamu akan menerima empat input:

  • Nama barang pertama
  • Harga barang pertama
  • Nama barang kedua
  • Harga barang kedua

Cetak setiap barang dengan format berikut:

Item: {Name}, Price: {Price}, In Stock: {InStock}

Misalnya, jika inputnya adalah Laptop, 999.99, Mouse, dan 25.50, outputnya harus seperti ini:

Item: Laptop, Price: 999.99, In Stock: True
Item: Mouse, Price: 25.50, In Stock: True

Coba sendiri

using System;
using Inventory;

class Program
{
    public static void Main(string[] args)
    {
        // Baca input untuk item pertama
        string name1 = Console.ReadLine();
        decimal price1 = Convert.ToDecimal(Console.ReadLine());
        
        // Baca input untuk item kedua
        string name2 = Console.ReadLine();
        decimal price2 = Convert.ToDecimal(Console.ReadLine());
        
        // TODO: Buat dua object Item menggunakan object initializer
        // Isi property Name dan Price dari nilai input
        
        // TODO: Tampilkan detail setiap item dengan format:
        // Item: {Name}, Price: {Price}, In Stock: {InStock}
    }
}
quiz iconUji dirimu

Pelajaran ini berisi kuis singkat. Mulai pelajarannya untuk menjawab kuis dan melacak progresmu.

Semua pelajaran di Pemrograman Berorientasi Objek

Latihan sendiri: Compiler C# online