随笔分类 -  Dart

摘要:dart有一个factory关键字,factory修饰的默认构造函数要返回类型实例,如: factory MyClass => getInstance(); 其它构造函数不能返回实例。 注意,dart中类的默认构造函数只能有一个!factory修饰的默认构造函数也算默认构造函数!所以实际的构造要么不 阅读全文
posted @ 2020-10-13 20:36 NeoZy 阅读(3102) 评论(0) 推荐(0)
摘要:mixin是混入类, 一般在c++中利用abstract类来继承接口,但如果A类已经继承了某个abstract类,但还需要加另一个类里的方法怎么办? dart中可以利用with 关键字混入其它类的方法直接使用/对其进行覆写后再使用 例子,这个类继承了BDLifecycleState,并且混入了BDN 阅读全文
posted @ 2020-08-13 16:05 NeoZy 阅读(360) 评论(0) 推荐(0)
摘要:工程中经常会用到button的onTap或者onPressed方法,传进去的一般都是函数名字,比如:onTap: f, f可能的定义为:void f(int x,int y){//xxxxxx;} 按照之前写c++的经验,传递函数应该是用函数指针方法传递的,细节有点忘了,但参数/返回值都是一定指定 阅读全文
posted @ 2020-08-09 17:41 NeoZy 阅读(4167) 评论(0) 推荐(0)
摘要:首先得明白下面2点: 全局变量的特点:常驻内存,污染全局变量 局部变量的特点:会被垃圾回收机制回收,不会污染作用域… // 闭包.dart void main(){ myClosure(){ var a = 0; // a是一个局部变量.函数执行完毕后将被清理 return (){ a++; pri 阅读全文
posted @ 2020-08-09 16:52 NeoZy 阅读(293) 评论(0) 推荐(0)
摘要:RT 阅读全文
posted @ 2020-08-09 16:39 NeoZy 阅读(607) 评论(0) 推荐(0)
摘要:import几种方式: import 'package:flutter/material.dart'; 这种package后不是跟工程名字的,表示自定义的dart文件import 'package:xxx/xxx.dart'; 引入Pub仓库pub.dev(或者pub.flutter-io.cn)中 阅读全文
posted @ 2020-08-06 17:25 NeoZy 阅读(1166) 评论(0) 推荐(0)
摘要:1. dart中is用来判断数据类型:int a=1; assert(a is num);//无报错 所以只要是is后面的类型的子类就行 然后相反的不是xx类型是用is!来判断,比如: int a=1; assert(a is! double); //无报错 as则是先判断是不是后面类型的子类,如果 阅读全文
posted @ 2020-08-06 01:45 NeoZy 阅读(188) 评论(0) 推荐(0)
摘要:转载于https://www.jianshu.com/p/a4affde4c8ca 当Event Looper正在处理Microtask Queue中的Event时候,Event Queue中的Event就停止了处理了,此时App不能绘制任何图形,不能处理任何鼠标点击,不能处理文件IO等等 Even 阅读全文
posted @ 2020-07-26 21:46 NeoZy 阅读(159) 评论(0) 推荐(0)
摘要:函数可以定义在表达式的内部,他们被称为函数字面量,或者闭包。 其实和c++的lambda匿名函数是一样的, 比如 country.cities.where((city)=>city.population>10000000) 其中的(city)=>city.population>10000000就是闭 阅读全文
posted @ 2020-07-26 18:24 NeoZy 阅读(412) 评论(0) 推荐(0)
摘要:dart中的抽象类也是用abstract关键字修饰。抽象类不能被实例化,只能作为接口被调用实现,下面是一个例子,前面两个类都是抽象类,第三个类调用了前两个类的所有接口,并重新进行了实现。 abstract class jiekou1{ get x; get y; } abstract class j 阅读全文
posted @ 2020-07-23 10:49 NeoZy 阅读(270) 评论(0) 推荐(0)
摘要:转载于https://blog.csdn.net/g6485644/article/details/85157913 名词没听过,看起来就是静态方法=类名.xxxx() 实例方法=类的实例对象.xxxx() 原文: 静态方法与实例方法的区别 1、静态方法属于整个类所有,因此调用它不需要实例化,可以直 阅读全文
posted @ 2020-07-22 11:20 NeoZy 阅读(541) 评论(0) 推荐(0)
摘要:1. const是编译时就要确定值,所以不能这样写: const datetime tim=datetime(); //因为datetime()的值只有运行时才能确定。 Final是第一次运行时需要确定值,所以可以这样写: Final datetime tim=datetime();//因为date 阅读全文
posted @ 2020-07-22 09:27 NeoZy 阅读(412) 评论(0) 推荐(0)
摘要:class p{ num x; num y; // p(num a,num b){ //构造函数写法1 和c++一样 // x=a; // y=b; // } // p(this.x,this.y); //构造函数写法2 // p.from2num(num a,num b){ //构造函数3(命名构 阅读全文
posted @ 2020-07-22 00:57 NeoZy 阅读(883) 评论(0) 推荐(0)