Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Properti dapat dideklarasikan pada antarmuka. Contoh berikut mendeklarasikan pengakses properti antarmuka:
public interface ISampleInterface
{
// Property declaration:
string Name
{
get;
set;
}
}
Properti antarmuka biasanya tidak memiliki isi. Pengakses menunjukkan apakah properti tersebut baca-tulis, baca-saja, atau tulis-saja. Tidak seperti di kelas dan struktur, mendeklarasikan pengakses tanpa isi tidak mendeklarasikan properti yang diimplementasikan secara otomatis. Antarmuka dapat menentukan implementasi default untuk anggota, termasuk properti. Menentukan implementasi default untuk properti dalam antarmuka jarang terjadi karena antarmuka tidak dapat menentukan bidang data instans.
Contoh
Dalam contoh ini, antarmuka IEmployee memiliki properti baca-tulis, Name, dan properti baca-saja, Counter. Kelas Employee menerapkan antarmuka IEmployee dan menggunakan dua properti ini. Program membaca nama karyawan baru dan jumlah karyawan saat ini dan menampilkan nama karyawan serta nomor karyawan yang dihitung.
Anda dapat menggunakan nama lengkap properti, yang merujuk pada antarmuka tempat anggota dideklarasikan. Contohnya:
string IEmployee.Name
{
get { return "Employee Name"; }
set { }
}
Contoh sebelumnya menunjukkan Penerapan Antarmuka Eksplisit. Misalnya, jika kelas Employee mengimplementasikan dua antarmuka ICitizen dan IEmployee dan kedua antarmuka memiliki Name properti , implementasi anggota antarmuka eksplisit diperlukan. Yaitu, deklarasi properti berikut:
string IEmployee.Name
{
get { return "Employee Name"; }
set { }
}
Name Mengimplementasikan properti pada antarmuka IEmployee, sedangkan deklarasi berikut:
string ICitizen.Name
{
get { return "Citizen Name"; }
set { }
}
Mengimplementasikan properti Name pada antarmuka ICitizen.
interface IEmployee
{
string Name
{
get;
set;
}
int Counter
{
get;
}
}
public class Employee : IEmployee
{
public static int numberOfEmployees;
private string _name;
public string Name // read-write instance property
{
get => _name;
set => _name = value;
}
private int _counter;
public int Counter // read-only instance property
{
get => _counter;
}
// constructor
public Employee() => _counter = ++numberOfEmployees;
}
System.Console.Write("Enter number of employees: ");
Employee.numberOfEmployees = int.Parse(System.Console.ReadLine());
Employee e1 = new Employee();
System.Console.Write("Enter the name of the new employee: ");
e1.Name = System.Console.ReadLine();
System.Console.WriteLine("The employee information:");
System.Console.WriteLine($"Employee number: {e1.Counter}");
System.Console.WriteLine($"Employee name: {e1.Name}");
Sampel keluaran
Enter number of employees: 210
Enter the name of the new employee: Hazem Abolrous
The employee information:
Employee number: 211
Employee name: Hazem Abolrous