Java中的Annotation解析之二(1)

2016-02-19 18:38 0 1 收藏

下面是个简单易学的Java中的Annotation解析之二(1)教程,图老师小编详细图解介绍包你轻松学会,喜欢的朋友赶紧get起来吧!

【 tulaoshi.com - 编程语言 】

一、Java 中的Annotation的定义

Java中的Annotation

Java定义了几个标准的meta-annotation,在新Package中java.lang.annotation 中包含了以下meta-annotation:

(本文来源于图老师网站,更多请访问https://www.tulaoshi.com/bianchengyuyan/)

meta-annotation 说明

@Target 1. annotation的target是一个被标注的程序元素。target说明了annotation所修饰的对象范围:annotation可被用于packages、types(类、接口、枚举、annotation类型)、类型成员(方法、构造方法、成员变量、枚举值)、方法参数和本地变量(如循环变量、catch参数)。在annotation类型的声明中使用了target可更加明晰其修饰的目标。

meta-annotation说明@Target1. annotation的target是一个被标注的程序元素。target说明了annotation所修饰的对象范围:annotation可被用于packages、types(类、接口、枚举、annotation类型)、类型成员(方法、构造方法、成员变量、枚举值)、方法参数和本地变量(如循环变量、catch参数)。在annotation类型的声明中使用了target可更加明晰其修饰的目标。
  
  2. ElementType的定义
  
  TYPE// Class, interface, or enum (but not annotation)

FIELD// Field (including enumerated values)
  
  METHOD// Method (does not include constrUCtors)
  
  PARAMETER// Method parameter
  
  CONSTRUCTOR// Constructor
  
  LOCAL_VARIABLE// Local variable or catch clause
  
  ANNOTATION_TYPE// Annotation Types (meta-annotations)
  
  PACKAGE// Java package

@Retention1. SOURCE//按照规定使用注释,但是并不将它保留到编译后的类文件中
  
  2. CLASS//将注释保留在编译后的类文件中,但是在运行时忽略它
  
  3. RUNTIME//将注释保留在编译后的类文件中,并在第一次加载类时读取它@DocumentedDocumented 表示注释应该出现在类的 Javadoc 中@Inherited一个Annotation将被继续

三个标准的Annotation 在java.lang包中:

(本文来源于图老师网站,更多请访问https://www.tulaoshi.com/bianchengyuyan/)@Deprecated对不再使用的方法进行注释@Override指明注释的方法覆盖超类的方法@SuppressWarnings阻止编译器的警告,例:当类型不安全时

下例来说明这三个标准的Annotation:

package sz.starbex.bill.annotation;
  
  import java.util.ArrayList;
  
  import java.util.List;
  
  public class SimpleOverrideAnnotation {
  
  public static void main(String[] args) {
  
  SimpleOverrideAnnotation test = new SimpleOverrideAnnotation();
  
  System.out.println(test.toString());
  
  }
  
  @Override
  
  public String toString() {
  
  return "自己的类自己输出";
  
  }
  
  @Deprecated
  
  public void doSomething() {
  
  System.out.println("方法已过时" );
  
  }
  
  @SuppressWarnings(value={"unchecked"})
  
  public void testSuppressWarnings(){
  
  List testList=new ArrayList();
  
  testList.add("KKKK");//没有使用范型,类型不安全
  
  }
  
  }

更多的请看:http://www.QQread.com/windows/2003/index.Html

一、Java 中的Annotation的定义

Java中的Annotation

Java定义了几个标准的meta-annotation,在新Package中java.lang.annotation 中包含了以下meta-annotation:

(本文来源于图老师网站,更多请访问https://www.tulaoshi.com/bianchengyuyan/)

meta-annotation 说明


来源:https://www.tulaoshi.com/n/20160219/1618441.html

延伸阅读
Annotation在Java的世界正铺天盖地展开,有空写这一篇简单的annotations的文章,算是关于Annotation入门的文章吧,希望能各位们能抛砖,共同学习...... 不讲废话了,实践才是硬道理. 第一部分:了解一下java1.5起默认的三个annotation类型: 一个是@Override:只能用在方法之上的,用来告诉别人这一个方法是改写父...
先简单说下前三种方式: DOM方式: 个人理解类似.net的XmlDocument,解析的时候效率不高,占用内存,不适合大XML的解析; SAX方式: 基于事件的解析,当解析到xml的某个部分的时候,会触发特定事件,可以在自定义的解析类中定义当事件触发时要做得事情;个人感觉一种很另类的方式,不知道.Net体系下是否有没有类似的方式? StAX方式: ...
昨天写this用法总结的时候,突然产生了一个问题,请教别人之后,有了自己的一点认识。还是把它写下来,为大家更好的认识提供一点思路。 1)有人写了个很好的初始化属性的构造函数,而你仅仅想要在其中添加另一些自己新建属性的初始化,这样在一个构造函数中调用另外一个构造函数,可以避免重复的代码量,减少工作量; 2)在一个构造函数中调用另...
标签: 主食
减肥餐之二【健身餐之二】 1. 食材,简单是食物最好的证明。 2. 所有材料备齐,放酱油,盐,和一点橄榄油 3. 小米面,揉好后,醒二十分钟,这样才酥软,嫩滑。 ...
一、什么是Spring? Spring是一个轻量级的控制反转(IoC)和面向切面(AOP)的容器框架 二、如何在程序中获取Spring配置的bean呢? 方法一:在初始化时保存ApplicationContext对象 代码: 代码如下: ApplicationContext ac = new FileSystemXmlApplicationContex("applicationContext.xml");     ac.getBean("beanId"); ...

经验教程

957

收藏

9
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部