`

java常见的3种注解(Annotation)

    博客分类:
  • java
阅读更多

1.@Deprecated

2 @Override

3.@SuppressWarnings

Annotation,是Java5的新特性,下面是SunTutorial的描述,因为是英文,这里我翻译下,希望能够比较清晰的描述一下Annotation的语法以及思想。

JDK5引入了Metedata(元数据)很容易的就能够调用Annotations.Annotations提供一些本来不属于程序的数据,比如:一段代码的作者或者告诉编译器禁止一些特殊的错误。An annotation 对代码的执行没有什么影响。Annotations使用@annotation的形势应用于代码:类(class),属性(field),方法(method)等等。一个Annotation出现在上面提到的开始位置,而且一般只有一行,也可以包含有任意的参数。@Author("MyName")class myClass() { }

  or @SuppressWarnings("unchecked")void MyMethod() { }

  Defining your own annotation is an advanced technique that won't be described here, but there are three built-in annotations that every Java programmer should know: @Deprecated, @Override, and @SuppressWarnings. The following example illustrates all three annotation types, applied to methods:

  定义自己的Annotation是一个比较高级的技巧,这里我们不做讨论,这里我们仅仅讨论每一个Java programer都应该知道的内置的annotations:@Deprecated, @Override, and @SuppressWarnings。下面的程序阐述了这三种annotation如何应用于methodsimport java.util.List;

  class Food {}

  class Hay extends Food {}

  class Animal {

  Food getPreferredFood() {

  return null; } /** * @deprecated document why the method was deprecated */

  @Deprecated

  static void deprecatedMethod() { }

  }

  class Horse extends Animal {

  Horse() {

  return;

  }

  @Override

  Hay getPreferredFood() {

  return new Hay();

  }

  @SuppressWarnings("deprecation")

  void useDeprecatedMethod() {

  Animal.deprecateMethod(); //deprecation warning - suppressed }}

  }

  }

 

  @Deprecated @Deprecated annotation标注一个method不再被使用。编译器在一个program(程序?)使用了不赞成的方法,类,变量的时候会产生警告(warning)。如果一个元素(element:method, class, or variable)不赞成被使用,应该像前面的例子里使用相应的@deprecated 标签,并且注意标签的首字母是小写的"d",annotation时大写的"D"。一般情况下,我们应该避免使用不赞成使用的方法(deprecated methods),而应该考虑替代的方法。

 

  @Override @Override annotation 告诉编译器当前元素是重写(override)自父类的一个元素。在前面的例子中,override annotation用来说明Horse类中的getPreferredFood这个方法重写(override)Animal类中相同的方法。如果一个方法被标注了@Override,但是其父类中没有这个方法时,编译器将会报错。但是并不是说我们一定要使用这个annotation,但是它能够很明显的给出实际行为,尤其是在方法返回一个被重写的方法返回类型的子类型的时候。上面的例子中,Animal.getPreferredFood 返回一个 Food实例,Horse.getPreferredFood 返回一个Hay实例,这里HorseAnimal的子类,HayFood的子类。

@SuppressWarnings annotation 告诉编译器禁止别的元素产生的特殊的警告(warnings),在前面的例子里,useDeprecatedMethod调用了Animal的不赞成使用的一个方法。一般情况下,编译器会给出一个警告(warning),但是在这种情况下,不会产生这个警告,也就是说被suppress。每个编译器的警告都属于一个类型。Java Language Specification列出了两种类型:"deprecation" "unchecked""unchecked" warning 发生在使用非generic的旧代码交互的generic collection类时。为了禁止不止一种的警告时,使用下面的语法:@SuppressWarnings({"unchecked", "deprecation"}) 

分享到:
评论

相关推荐

    Java自定义注解Annotation的使用

    ### Java自定义注解Annotation的使用 #### 1. 前言 自从JDK 1.5引入了注解这一特性以来,它已经成为Java开发中的一个重要组成部分。注解最初是为了推动EJB 3.0的普及和发展而设计的,其目的是减少配置文件的使用,...

    Dwr3+Spring3 全注解 annotation 方式

    在IT行业中,DWR(Direct Web Remoting)和Spring框架是两种常见的Web开发技术。DWR允许在浏览器和服务器之间进行实时的JavaScript到Java的调用,极大地增强了Web应用程序的交互性。而Spring框架则是一个全面的企业...

    java教程之java注解annotation使用方法

    5. 其他常见注解: - `@Deprecated`:标记过时的类、接口或方法。 - `@FunctionalInterface`:标记一个函数式接口,表示该接口只有一个抽象方法。 - `@NotNull`、`@NonNull`:用于表示参数或返回值不允许为null,...

    详解Android注解 Annotation

    在Android开发中,注解(Annotation)是一种元数据,它提供了在代码中附加信息的方式,这些信息可以被编译器或者运行时环境用来执行特定的操作。注解在Java语言中引入,随后被广泛应用于Android系统,帮助开发者实现...

    注解annotation的详细介绍

    注解(Annotation)是Java语言中的一个重要特性,自JDK5开始引入,它提供了一种安全的方式,使得程序员可以向源代码中添加元数据(metadata)。元数据是关于数据的数据,它并不改变程序运行方式,但可以被编译器、...

    java和ssh注解

    Java注解是一种元数据,它提供了一种安全的方式向编译器或JVM传递信息。常见的注解如@Override、@Deprecated、@ SuppressWarnings等,它们可以帮助开发者进行类型检查、版本控制和消除警告。自定义注解可以用于更...

    annotation(java注解类型,区别)

    在Java编程语言中,注解(Annotation)是一种元数据,它提供了一种安全的方法来将信息附加到代码中,而不改变代码的行为。注解的主要用途包括编译器指令、运行时处理(如Java Reflection)、代码生成以及框架和库的...

    探索Java注解的神秘世界:Annotation全解析

    Java 注解在实际开发中有多种用途,以下是一些常见的应用场景: 1. **依赖注入**:Spring 框架利用注解如 `@Autowired` 和 `@Component` 来自动管理对象之间的依赖关系。 2. **测试框架**:JUnit 使用 `@Test` 和 `...

    struts2利用注解annotation实现文件下载

    ### Struts2 使用注解(Annotation)实现文件下载 在Web开发中,文件上传与下载是常见的需求之一。Struts2框架提供了强大的功能来支持这一需求。本文将详细介绍如何使用Struts2框架结合注解(Annotation)的方式...

    Spring java注解,元注解和自定义注解

    Java注解(Annotation)是一种元数据,可以为程序代码添加额外的信息。注解本身并不改变程序的行为,但它可以通过工具或编译器被读取和处理,从而影响到程序的编译、运行等阶段。 #### 二、Spring中的Java注解 ...

    java注解深入理解

    Java注解是Java编程语言中的一个重要特性,它提供了一种元数据的方式,允许程序员在代码中插入额外的信息,这些信息可以被编译器或者运行时环境用来执行特定的任务。注解在现代Java开发中扮演了不可或缺的角色,尤其...

    Annotation--学习:JDK内建Annotation

    在Java编程语言中,Annotation(注解)是一种元数据,它提供了在编译时和运行时为代码添加信息的方式。注解是自Java 5版本引入的特性,它增强了代码的可读性和可维护性,同时也简化了某些编程任务。在本篇中,我们将...

    基于注解形式的Java操作excel表格

    基于注解的Java操作Excel是一种高效且简洁的方式,它允许开发者通过在代码中添加特定的注解来定义和执行Excel相关的操作。这种方式极大地简化了代码,提高了可读性和可维护性。 首先,我们要理解注解(Annotation)...

    Java元注解是Java注解的重要特性,下面我就来详解常见的4大Java元注解

    * ElementType.ANNOTATION_TYPE:用于注解其他注解类型。 * ElementType.PACKAGE:用于注解包。 @Target 的作用是指定注解可以应用于哪些程序元素,从而提高注解的灵活性和可扩展性。 3.@Documented @Documented ...

    Android Annotation 安卓注解实例

    Android Annotation库则是专门为Android应用提供的一种便捷的方式来使用注解,它简化了如依赖注入、界面生命周期管理、网络请求等多种常见任务。 1. **依赖注入(Dependency Injection)** Android Annotation支持...

    java关于注解使用的例子

    Java注解(Annotation)是Java语言提供的一种元数据机制,它允许程序员在源代码的各个元素(如类、方法、变量等)上添加信息。这些信息可以被编译器或运行时环境用来验证代码、生成代码、配置应用程序,或者提供其他...

    Java 使用注解拼接SQL语句

    在Java编程中,注解(Annotation)是一种元数据,它提供了在代码中附加信息的方式,这些信息可以被编译器或运行时环境用来执行特定的任务。"Java使用注解拼接SQL语句"是一个常见的实践,它使得动态构建SQL查询变得...

    java注解详解

    ### Java注解详解 #### 一、注解(Annotation)简介 注解是Java语言自JDK 5.0版本引入...以上内容总结了Java注解的基本概念、常见注解、元注解以及注解的定义和使用方式,帮助开发者更好地理解和运用注解这一强大特性。

Global site tag (gtag.js) - Google Analytics