Penggunaan Interface Properties C# Asp.Net


Properti dapat dideklarasikan pada sebuah interface. Berikut ini adalah contoh accessor pengindeks interface:
public interface ISampleInterface
{
    // Property declaration:
    string Name
    {
        get;
        set;
    }
}
Accessor dari properti interface tidak memiliki body. Dengan demikian, tujuan dari accessors adalah untuk menunjukkan apakah properti tersebut read-write, read-only, atau write-only.

  • Contoh


Dalam contoh ini, interface IEmployee memiliki properti read-write property, Name, dan properti read-only property, Counter. Employee class menerapkan interface IEmployee dan menggunakan kedua properti ini.

Program ini membaca nama Employee baru dan jumlah employee saat ini dan menampilkan nama employee dan nomor karyawan yang dihitung. Kita bisa menggunakan nama properti yang memenuhi syarat, yang refernce pada interface di mana member tersebut dideclare. Sebagai contoh:
string IEmployee.Name
{
    get { return "Employee Name"; }
    set { }
}
Ini disebut Explicit Interface Implementation. Misalnya, jika Employee class menerapkan dua inteface ICitizen dan IEmployee dan kedua interface memiliki properti Name, implementasi member interface eksplisit akan diperlukan. Artinya, deklarasi properti berikut:
string IEmployee.Name
{
    get { return "Employee Name"; }
    set { }
}
menerapkan properti Nama pada interface IEmployee, sedangkan deklarasi berikut:
string ICitizen.Name
{
    get { return "Citizen Name"; }
    set { }
}
menerapkan properti Nama pada interface 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
        {
            return name;
        }
        set
        {
            name = value;
        }
    }

    private int counter;
    public int Counter  // read-only instance property
    {
        get
        {
            return counter;
        }
    }

    public Employee()  // constructor
    {
        counter = ++counter + numberOfEmployees;
    }
}

class TestEmployee
{
    static void Main()
    {
        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: {0}", e1.Counter);
        System.Console.WriteLine("Employee name: {0}", e1.Name);
    }
}
210 Hazem Abolrous
Contoh Output

Enter number of employees: 210

Enter the name of the new employee: Hazem Abolrous

The employee information:

Employee number: 211

Employee name: Hazem Abolrous
Previous
Next Post »