Dart Programlama - Arayüzler
Bir interfaceherhangi bir varlığın uyması gereken sözdizimini tanımlar. Arayüzler, bir nesnede bulunan bir dizi yöntemi tanımlar. Dart, arabirimleri bildirmek için bir sözdizimine sahip değildir. Sınıf bildirimlerinin kendileri Dart'taki arayüzlerdir.
Classesbir arabirimi kullanabilmek için implements anahtar sözcüğünü kullanmalıdır. Uygulama sınıfı için, uygulanan arayüzün tüm işlevlerinin somut bir uygulamasını sağlaması zorunludur. Başka bir deyişle, bir sınıf, uygulamak istediği arayüzdeki her işlevi yeniden tanımlamalıdır.
Sözdizimi: Bir Arayüz Uygulama
class identifier implements interface_name
Misal
Aşağıdaki programda bir sınıf tanımlıyoruz Printer. ConsolePrinter sınıf, için örtük arabirim bildirimini uygular Printersınıf. main fonksiyonun bir nesnesini yaratır ConsolePrinter kullanarak sınıf newanahtar kelime. Bu nesne işlevi çağırmak için kullanılırprint_data tanımlanmış ConsolePrinter sınıf.
void main() {
ConsolePrinter cp= new ConsolePrinter();
cp.print_data();
}
class Printer {
void print_data() {
print("__________Printing Data__________");
}
}
class ConsolePrinter implements Printer {
void print_data() {
print("__________Printing to Console__________");
}
}
Aşağıdakileri üretmelidir output -
__________Printing to Console__________
Birden Çok Arayüz Uygulama
Bir sınıf birden çok arabirim uygulayabilir. Arayüzler virgülle ayrılmıştır. syntax aynısı aşağıda verilmiştir -
class identifier implements interface-1,interface_2,interface_4…….
Aşağıdaki example Dart'ta birden çok arayüzü nasıl uygulayabileceğinizi gösterir -
void main() {
Calculator c = new Calculator();
print("The gross total : ${c.ret_tot()}");
print("Discount :${c.ret_dis()}");
}
class Calculate_Total {
int ret_tot() {}
}
class Calculate_Discount {
int ret_dis() {}
}
class Calculator implements Calculate_Total,Calculate_Discount {
int ret_tot() {
return 1000;
}
int ret_dis() {
return 50;
}
}
Aşağıdakileri üretmelidir output -
The gross total: 1000
Discount:50