- 1、本文档共43页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第6章 数组、举及注解
6.9 内置注解 内置注解是指Java语言内部已定义好的注解,可直接使用。Java SE预定义了三种标准注解(在java.lang包中)和四种元注解(在java.lang.annotation包中)。定义在java.lang包中的三种标准注解如下: @Override:表示当前的方法定义将重写父类中的方法。如果不小心拼写错误,或者签名对不上重写的方法,编译器就会发出错误提示。 @Deprecated:如果使用了用它注解的程序元素,那么编译器会发出警告信息。 @SuppressWarnings:关闭指定的编译器警告信息 annotation并不直接影响代码语义,但是它工作的方式被看作类似程序的工具或者类库,它会反过来对正在运行的程序语义有所影响。 6.9.1 Override java.lang.Override是J2SE 5.0中标准的annotation类型之一,它告诉编译器某个方法必须是重写父类中的方法,编译器得知这项信息后,在编译程序时如果发现该方法并非重写父类中的方法,就会报告错误。该注解只能应用于方法。 【例6.11】使用@Override注解。 现在对Equals()方法加上@Override注解,要求编译器必须检查这个方法是不是重写父类的某个方法,但编译器发现父类Object类中并没有这个方法,所以它会报告如下错误: OverrideTest.java:8: method does not override a method from its superclass @Override ^ 1 error 6.9.2 Deprecated java.lang.Deprecated是J2SE 5.0中标准的annotation类型之一,它告诉编译器某个程序元素已经不建议使用,如果试图使用或重新定义该方法,则发出警告信息。 【例6.12】使用@Deprecated注解。 DeprecatedTest.java package org.annotations; public class DeprecatedTest extends Service { @Override public void doSomething() { System.out.println(do something in DeprecatedTest class); } public static void main(String[] args) { DeprecatedTest sub = new DeprecatedTest(); sub.doSomething(); } } class Service { @Deprecated public void doSomething() { System.out.println(do something); } } 6.9.2 Deprecated 说明:在程序中定义一个Service类,并在其中定义doSomething()方法,经过一段时间之后,考虑不建议使用这个方法,因而将这个方法注解为@Deprecated,DeprecatedTest类试图在继承这个类后重新定义doSomething()方法,程序编译时,就会出现如图6.7所示的报告信息。 图6.7 使用@Deprecated注解 6.9.3 SuppressWarnings 下面的方法f()中定义了一个ArrayList类,但同时会出现警告信息。 public void f() { List list = new ArrayList(); list.add(hello); } 警告信息表示List类必须使用泛型才是安全的,才可以进行类型检查。如果想不显示这个警告信息有两种方法。一个是将这个方法进行如下改写: public void f() { ListString list = new ArrayListString(); list.add(hello); } 另外一种方法就是使用@SuppressWarnings,如下所示: @SuppressWarnings (value = {unchecked}) public void f() { List list = new ArrayList(); list.add(hello); } 6.9.3 SuppressWarnings 要注意的是SuppressWarnings和前两个注解不一样。前两个注解是没有元素的。因而可写成:@Override 或@ Override(),而SuppressWar
您可能关注的文档
- 第6章 微分方模型仿真常微分方程的数值求解微分方程模型.ppt
- 第6章 建设工进度控制.ppt
- 第6章 建筑声境与材料.ppt
- 第6章 怀特的统化.ppt
- 第6章 成本与益.ppt
- 第6章 想象与维.ppt
- 第6章 房地产属登记制度与政策.ppt
- 第6章 成本计与财产.ppt
- 第6章 房地产发项目的规划设计及其评价.ppt
- 第6章 总线及机.ppt
- 2024年陕西咸阳亨通电力(集团)有限公司供电服务业务部直聘用工招聘145人笔试参考题库附带答案详解 .docx
- 2024年中建四局土木工程有限公司校园招聘笔试参考题库附带答案详解 .docx
- 2024年四川雅茶贸易有限公司公开招聘和考察聘用人员3人笔试参考题库附带答案详解 .docx
- 2024年中国烟草总公司辽宁省公司公开招聘拟录用人员(166人)笔试参考题库附带答案详解 .docx
- 2024江苏连云港中诚物业管理有限公司招聘工作人员1人笔试参考题库附带答案详解 .docx
- [毕节]2025年贵州毕节市引进人才649人笔试历年参考题库附带答案详解.docx
- 2024年度中国东航技术应用研发中心有限公司校园招聘笔试参考题库附带答案详解 .docx
- 2024年福建省厦门盐业有限责任公司春季人才招聘1人笔试参考题库附带答案详解 .docx
- 2024年山东省环保发展集团绿能有限公司职业经理人招聘2人笔试参考题库附带答案详解 .docx
- 2024年安徽滁州郊源阳光电力维修工程有限责任公司招聘41人(第一批次)笔试参考题库附带答案详解 .docx
文档评论(0)