ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

Dart中内置常用元数据@deprecated、@override、@proxy、@required和自定义元数据

2021-02-23 14:58:09  阅读:759  来源: 互联网

标签:const 自定义 数据 deprecated required library 方法 参数 todo


元数据:主要是描述数据属性(property)的信息,用来支持如指示存储位置、历史数据、资源查找、文件记录等功能。

1、@deprecated被弃用的
含义:若某类或某方法加上该注解之后,表示此方法或类不再建议使用,调用时也会出现删除线,但并不代表不能用,只是说,不推荐使用,因为还有更好的方法可以调用。
作用:因为在一个项目中,工程比较大,代码比较多,而在后续开发过程中,可能之前的某个方法实现的并不是很合理,这个时候就要新加一个方法,而之前的方法又不能随便删除,因为可能在别的地方有调用它,所以加上这个注解,就方便以后开发人员的方法调用了。

2、@override 重写父类方法(利用元数据override重写父类方法)

3、@proxy 代理

4、 @required 来标记一个参数,表示这个参数必须要传值。

•	告诉编译器这个参数必须要传值
•	告诉读代码的人,这个参数必须要填写

5、定义自己的元数据

通过library来定义一个库,在库中定义一个相同名字的class,然后在类中定义const 构造方法。

MyHomePage({Key key, @required this.title}) : super(key:key);
//自定义元数据@todo
library todo; //library封装了个todo的库
 
class todo {
  final String who;
  final String what;
  //和普通实例化类,不一样,前面多了个const
  const todo(this.who, this.what);
}

// 使用
import 'todo.dart';
 
@todo('seth', 'make this do something')
void doSomething() {
  print('do something');
}

6、元数据可以修饰以下内容

◦ library(库),
◦ class(类),
◦ typedef(类型定义),
◦ type parameter(类型参数),
◦ constructor(构造函数),
◦ factory(工厂函数),
◦ function(函数),
◦ field(作用域),
◦ parameter(参数),
◦ variable declaration(变量声明)。

标签:const,自定义,数据,deprecated,required,library,方法,参数,todo
来源: https://blog.csdn.net/xiaoxia188/article/details/113988952

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有