【Flutter】Dart中的继承
1. 写在前面
在上篇文章中介绍了Dart
中的类方法
和对象操作符
,那么现在就继续来学习 Dart
中的继承
吧。
【Flutter】苹果Mac电脑配置flutter开发环境
【Flutter】 Android Studio 安装第三方模拟器—网易MuMu
【Flutter】项目运行报错Failed to find Build Tools revision 29.0.2
【Flutter】flutter doctor 报错Android license status unknown. Run `flutter doctor --android-licenses‘
【Flutter】如何新建项目,运行你的第一个 flutter 工程项目
【Flutter】Dart中的var、final 和 const基本使用
【Flutter】Dart数据类型之num
【Flutter】Dart数据类型之String
【Flutter】Dart的数据类型list&Map(数组和字典)
【Flutter】Dart的方法与箭头函数
【Flutter】Dart的方法中的可选参数、方法作为参数传递
【Flutter】Dart中的匿名函数、闭包
【Flutter】Dart中的类和对象
【Flutter】Dart中的构造函数
【Flutter】Dart的工厂构造方法&单例对象&初始化列表
【Flutter】Dart的类方法和对象操作符
2. 继承
在面向对象的开发语言当中,继承是经常听到的一个词语,在 iOS 中我们也是经常用继承来进行代码的复用,那么在 dart
中的继承是如何定义和使用的呢?
- 在 Dart 中
- 使用 extens 继承一个类
- 子类会继承除了构造方法以外的属性和方法
- dart是单继承
那么接下来就具体看看代码吧!先定义一 个Person
类,Student
继承Person
类。
class Student extends Person {study(){print("好好学习,天天向上");}
}
class Person {String? name;int? age;int? _height;//计算属性bool get isRight => _height! > 180;run(){print("run.....");}}
2.1 子类继承父类的属性和方法
- 子类继承父类的属性和方法
void main() {Student stu = Student();stu.name = "reno";stu.run();stu._height = 181;stu.study();print(stu.isRight);}
- 打印结果
2.2 子类重写父类方法
- 子类重写父类方法
@overriderun(){print("Student run..");}
重写父类的方法和 Swift
一样都是使用override
来重写。
2.3 多态
- 多态
//多态Person stu = Student();if(stu is Student) {stu.name = "reno";stu.run();stu._height = 181;stu.study();print(stu.isRight);}
- 测试结果
所有的类都是继承自 Object
所以Person
类相当于下面这样:
class Person extends Object{}
Object
里面有个方法:toString()
类似于 OC
中的description
,现在去重写一下toString()
:
toString()
默认情况下是返回super.toString()
的值,这个返回值也可以自己定义
2.4 关于构造方法
- 构造方法
父类的默认构造方法子类是自带继承过去的,但是父类的带参数的构造方法,带名称的构造方法,子类不默认继承,需要手动去实现,如果有多个,子类手动实现其中一个就可以,如下:
子类没有实现除默认以外的构造方法,会报错,实现其中一个即可了。
3. 写在后面
关注我,更多内容持续输出
- CSDN
- 掘金
- 简书
【Flutter】Dart中的继承相关推荐
- 深入理解 Dart 中的继承和 Minxins
上一篇文章中我们详细地介绍了 Dart 中的面向对象的基础,这一篇文章中我们继续探索 Dart 中面向对象的重点和难点(继承和 Mixins).Mixins(混合)特性是很多语言中都是没有的.这篇文章 ...
- Flutter Dart 中List的初始化
List的初始化有多种方式 main(){List<int> myList=[];myList.add(1);print(myList[0]); }
- Flutter 开发中最实用的 Dart 语法知识
零.前言 都说 Flutter 是谷歌的新宠,这段时间有空,就学习了一下 Dart 语法.本篇文章将会详细全面的介绍 Dart 常用语法. 一.变量和常量 在 Drat 语言中,一切皆对象,对象的默认 ...
- 如何在 Flutter 和 Dart 中检查数字字符串
如何在 Flutter 和 Dart 中检查数字字符串 数字字符串只是字符串格式的数字. 数字字符串示例: '123', '0.123', '4.234,345', '-33.33', '+44.44 ...
- dart开发Android服务,关于android:在Flutter应用中使用由swagger生成的Dart代码生成的Web服务...
我正在尝试使用Flutter开发一个移动应用程序,我使用swagger生成了包含所有Web服务的Dart文件代码生成.我想从Web服务中获取所有用户的列表. 在屏幕上,我想为每个用户显示:图像,名字, ...
- [Dart] Flutter开发中的几个常用函数
几个Flutter开发中的常用函数 /** 返回当前时间戳 */static int currentTimeMillis() {return new DateTime.now().millisecon ...
- 详解Dart中如何通过注解生成代码
简介:详解dart与java注解生成代码异同点 作者:闲鱼技术-龙湫 1.背景 最近在项目中使用到了Dart中的注解代码生成技术,这跟之前Java中APT+JavaPoet生成代码那套技术还是有一些不 ...
- Flutter 动态化 | Flutter + Dart 三端一体化动态化平台实践
导读 FairPushy 是基于Flutter+Dart三端一体化打造的动态更新平台主要由Web + Server + Native全部使用Flutter+Dart编写,为Flutter动态化场景提供 ...
- Flutter --- Dart简介
一.简介 由Google主导开发,于2011年10月公开.它的开发团队由Google Chrome浏览器V8引擎团队的领导者拉尔斯·巴克主持,目标在于成为下一代结构化Web开发语言.类似JavaScr ...
- 用Flutter + Dart快速构建一款绝美移动App
作者 | Wojciech Kuroczycki 译者 | 弯月 来源 | CSDN(ID:CSDNnews) 如今,与前端或移动相关的新框架层出不穷.所有从事Web开发的人都应该熟悉各种目不暇接的新 ...
最新文章
- 2021美国科学天才奖发榜!16名华裔高中生入围「少年诺奖」
- 15.文件系统——软RAID的实现(二)(mdadm,watch, RAID1)
- Map类集合K/V能不能存储null值的情况
- 创建variant二维数组
- 用系统自带的SSH实现两台linux密钥认证访问
- canvas实现点连线动画
- 中国邮政国际挂号信网上查询
- spotbug常见错误心得
- 实用应聘技巧(转前沿讲座)
- 量化交易员珍藏的10本书,一般人不会教你的事
- 令人恶心的小米和神州优车集团面试之旅
- NUnit 入门知识
- 黑小米真不应该,如今它已是国货之光,成为国产手机在海外领军者
- mysql数据备份与导入
- QTP数据驱动和关键字驱动
- 加密U盘专业加密芯片方案
- 2018计算机系统结构全国卷,2018年10月高等教育自学考试全国统一命题考试02325计算机系统结构试卷及答案.doc...
- 天地图服务http转https报错
- 微信公众号网页H5跳转微信小程序
- 考研复试数据库原理课后习题(十)——数据库恢复技术
热门文章
- 【mysql】join的用法和修改数据表
- Spring Boot 集成 Spring Security 实现权限认证模块
- JS实现new关键字的功能
- framework7日期插件使用
- 学习OpenCV——OpenMP
- HDU 1102 Constructing Roads
- Linux c/c++ IDE(开发环境)
- 20175320 2018-2019-2 《Java程序设计》第8周学习总结
- 34.Odoo产品分析 (四) – 工具板块(5) – 设备及联系人目录(1)
- osx mount nfs/smb