在面试中被问及你对Dart Flutter中的面向对象的理解,大家是怎样作答的呢?

在一次面试中,面试官问我对Dart Flutter中的面向对象的理解,由于准备不足,感觉自己没给一个完美答复,另外还有其他的的问题也是答的不行,感觉对自己都没了信心。于是,回家后网上查资料,找Flutter教程学习,想着等准备充足了再一鼓作气,开启求职面试之路。

这里分享下目前我对Dart Flutter中的面向对象的理解。

Dart是一门面向对象的语言,具有面向对象的三大特性:封装、继承、多态。

封装是对象和类概念的主要特性。它把客观事物封装成抽象的类,并且把自己的部分属性和方法提供给其他对象调用,而一部分属性和方法则隐藏。

继承是复用的一种手段,子类继承父类,会继承父类的所有公开属性和公开方法(包括计算属性),私有的属性和方法则不会被继承。子类可以覆写父类的公开方法。

多态性是指允许将子类类型的指针赋值给父类类型的指针,同一个函数调用会有不同的执行效果。

封装、继承都好理解,这里主要提供多态的例子。

多态是同一种行为具有不同表现形式或形态。以下是一个Dart多态代码示例:

void main() {
  // 创建两个动物对象
  Animal dog = new Dog();
  Animal sheep = new Sheep();
  // 调用动物的 eat 方法
  dog.eat();
  sheep.eat();
}

class Animal {
  void eat() {
    print('Animal class eat.');
  }
}

class Dog extends Animal {
  @override
  void eat() {
    print('Dog eat meat.');
  }
}

class Sheep extends Animal {
  @override
  void eat() {
    print('Sheep eat grass.');
  }
}

目前正在学的这套Flutter教程也很给力,全程无废话。

Dart Flutter教程

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值