抽象类是Dart中具有一个或多个抽象方法的类。抽象是数据封装的一部分,其中函数的实际内部工作对用户隐藏。它们仅与外部功能交互。我们可以使用abstract关键字声明abstract类。抽象类可能有也可能没有抽象方法。
使用抽象关键字和类名来声明抽象类。一个抽象类,通常用于为子类提供扩展和实现abstract方法的基础。
abstract class ClassName { //Body of abstract class }
假设我们有一个Person类,它具有displayInfo()方法,并且必须为其子类Boy和Girl。每个人的信息都与另一个人不同,因此在父类中实现displayInfo()没有任何好处。因为每个子类都必须通过提供其自己的实现来覆盖父类方法。因此,我们可以强制子类为该方法提供实现,这是使方法抽象的好处。我们不需要父类中的Give实现。
让我们通过以下代码了解上述情况。
abstract class Person { //声明抽象方法 void displayInfo(); //抽象方法 } class Boy extends Person { // 抽象方法 void displayInfo() { print("My name is Learnfk"); } } class Girl extends Person { // 覆盖方法 void displayInfo() { print("My name is Toolfk"); } } void main() { Boy b = new Boy(); //创建boy类的对象 Girl g = new Girl(); //创建girl类的对象 b.displayInfo(); g.displayInfo(); }
输出
My name is Learnfk My name is Toolfk
祝学习愉快!(内容编辑有误?请选中要编辑内容 -> 右键 -> 修改 -> 提交!)
Tony Bai · Go语言第一课 -〔Tony Bai〕