Lập trình Dart - Giao diện
An interfacexác định cú pháp mà bất kỳ thực thể nào phải tuân theo. Giao diện xác định một tập hợp các phương thức có sẵn trên một đối tượng. Dart không có cú pháp để khai báo giao diện. Các khai báo lớp chính là giao diện trong Dart.
Classesnên sử dụng từ khóa triển khai để có thể sử dụng một giao diện. Lớp thực thi bắt buộc phải cung cấp một bản triển khai cụ thể của tất cả các chức năng của giao diện được triển khai. Nói cách khác, một lớp phải xác định lại mọi chức năng trong giao diện mà nó muốn thực hiện.
Cú pháp: Triển khai một giao diện
class identifier implements interface_name
Thí dụ
Trong chương trình sau, chúng tôi đang khai báo một lớp Printer. CácConsolePrinter lớp triển khai khai báo giao diện ngầm định cho Printerlớp học. Cácmain hàm tạo ra một đối tượng của ConsolePrinter lớp học sử dụng newtừ khóa. Đối tượng này được sử dụng để gọi hàmprint_data được định nghĩa trong ConsolePrinter lớp học.
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__________");
}
}
Nó sẽ tạo ra những thứ sau output -
__________Printing to Console__________
Triển khai nhiều giao diện
Một lớp có thể triển khai nhiều giao diện. Các giao diện được phân tách bằng dấu phẩy. Cácsyntax cho điều tương tự được đưa ra bên dưới -
class identifier implements interface-1,interface_2,interface_4…….
Sau example cho thấy cách bạn có thể triển khai nhiều giao diện trong Dart -
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;
}
}
Nó sẽ tạo ra những thứ sau output -
The gross total: 1000
Discount:50