第09章内部类枚举和注解.ppt

  1. 1、本文档共32页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
6.1.1 标准注解 这里介绍Java语言规范中定义的3个注解类型,它们是供编译器使用的。它们定义在java.lang包中,分别为 @Override @Deprecated @SuppressWarnings @Override是一个标记注解类型,可以用在一个方法的声明中,它告诉编译器这个方法要覆盖父类中的某个方法。使用该注解可以防止程序员在覆盖某个方法时出错。 6.1.1 标准注解 @Deprecated是一个标记注解类型,可以应用于某个方法或某个类型,指明方法或类型已被弃用。 警告代码用户不应该使用或者覆盖该方法,或者不该使用或扩展该类型。 一个方法或类型被标记弃用通常是因为有了更好的方法或类型。 6.1.1 标准注解 @SuppressWarnings注解指示编译器阻止某些类型的警告,具体警告类型可以用初始化该注解的字符串来定义。 该注解可应用于类型、构造方法、方法、成员变量、参数以及局部变量。它的用法是传递一个String数组,其中包含需要阻止的警告。语法如下: SuppressWarnings(value={string-1,…,string-n}) 6.1.1 定义注解类型 用户也可以定义注解类型。注解类型的定义与接口类型的定义类似。注解类型的定义使用interface关键字,前面加上@符号。 public @interface CustomAnnotation{ // 元素或属性声明 } 在注解类型中声明的方法称为注解类型的元素,它的声明类似于接口中的方法声明,没有方法体,但有返回类型。 6.1.1 定义注解类型 元素的类型有一些限制,如只能是基本类型、String、枚举类型、其他注解类型等,并且元素不能声明任何参数。 在定义注解时可以使用default关键字为元素指定默认值。例如: public @interface Version{ int major() default 1; int minor() default 0; } 6.1.1 定义注解类型 Version注解类型可以用来标注类和接口,也可以供其他注解类型使用。例如,可以用它来重新定义ClassInfo注解类型: public @interface ClassInfo{ String created(); String author(); String lastModified(); Version version(); } 6.1.1 定义注解类型 注解类型中也可以没有元素,这样的注解称为标记注解(marker annotation),这与标记接口类似。例如,下面定义了一个标记注解类型Preliminary: public @interface Preliminary { } 6.1.1 定义注解类型 如果注解类型只有一个元素,这个元素应该命名为value。例如,Copyright注解类型只有一个String类型的元素,则其应该定义为: public @interface Copyright { String value(); } 这样,在为程序元素注解时就可以不需要指定元素名称,而采用一种缩略的形式: @Copyright(flying dragon company)。 6.1.1 课堂讨论及训练 1.给定下列代码有编译错误,请找出。 (1)使用匿名内部类改写该程序。 (2)使用Lambda表达式实现该程序功能。 6.1.1 课堂讨论及训练 import java.util.*; public class Pockets{ public static void main(String[] args){ String[] sa = {east, west, south, north}; Sorter s = new Sorter(); for(String s2: sa) System.out.print(s2 + ); Arrays.sort(sa,s); System.out.println(); for(String s2: sa) System.out.print(s2 + ); } class Sorter implements ComparatorString{ public int compare(String a, String b) { return pareTo(a); } } } 6.1.1 编程作业 9.2 编写一个名为Outer的类,它包含一个名为

文档评论(0)

有谱教育资源分享 + 关注
实名认证
内容提供者

热爱生活,分享教育专业文档! 所有资料均来源于互联网公开下载资源,如有侵权,请联系管理员及时删除。

1亿VIP精品文档

相关文档