Dart Programming - อินเทอร์เฟซ
อัน interfaceกำหนดไวยากรณ์ที่เอนทิตีต้องปฏิบัติตาม อินเทอร์เฟซกำหนดชุดวิธีการที่มีอยู่ในอ็อบเจ็กต์ Dart ไม่มีไวยากรณ์สำหรับการประกาศอินเทอร์เฟซ การประกาศคลาสคืออินเทอร์เฟซใน Dart
Classesควรใช้คีย์เวิร์ด implements เพื่อให้สามารถใช้อินเทอร์เฟซได้ เป็นข้อบังคับสำหรับคลาสการใช้งานที่จะต้องจัดเตรียมการใช้งานฟังก์ชันทั้งหมดของอินเทอร์เฟซที่ใช้งานอย่างเป็นรูปธรรม กล่าวอีกนัยหนึ่งคลาสต้องกำหนดทุกฟังก์ชันใหม่ในอินเทอร์เฟซที่ต้องการใช้
ไวยากรณ์: การใช้อินเทอร์เฟซ
class identifier implements interface_name
ตัวอย่าง
ในโปรแกรมต่อไปนี้เรากำลังประกาศคลาส Printer. ConsolePrinter คลาสใช้การประกาศอินเทอร์เฟซโดยนัยสำหรับ Printerชั้นเรียน main ฟังก์ชันสร้างวัตถุของ ConsolePrinter คลาสโดยใช้ newคำสำคัญ. วัตถุนี้ใช้เพื่อเรียกใช้ฟังก์ชันprint_data กำหนดไว้ใน ConsolePrinter ชั้นเรียน
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__________");
}
}
ควรผลิตสิ่งต่อไปนี้ output -
__________Printing to Console__________
การใช้งานหลายอินเทอร์เฟซ
คลาสสามารถใช้งานได้หลายอินเทอร์เฟซ อินเทอร์เฟซถูกคั่นด้วยเครื่องหมายจุลภาค syntax สำหรับสิ่งเดียวกันจะได้รับด้านล่าง -
class identifier implements interface-1,interface_2,interface_4…….
ดังต่อไปนี้ example แสดงให้เห็นว่าคุณสามารถใช้อินเทอร์เฟซหลายตัวใน 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;
}
}
ควรผลิตสิ่งต่อไปนี้ output -
The gross total: 1000
Discount:50