`
elite20130514
  • 浏览: 47847 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

注解入门

阅读更多

注解网络原语:

1、注解相当于一种标记,可以通过反射获得,可以给包,类,方法,变量等加注解,jdk中提供的最基本的注解 是 Annotation
2、Deprecated 用 @Deprecated 注释的程序元素,不鼓励程序员使用这样的元素,通常是因为它很危险或存在更好的选择。
   在使用不被赞成的程序元素或在不被赞成的代码中执行重写时,编译器会发出警告。
3、Override 表示一个方法声明打算重写超类中的另一个方法声明。如果方法利用此注释类型进行注解但没有重写超类方法,
   则编译器会生成一条错误消息。 
4、SuppressWarnings指示应该在注释元素(以及包含在该注释元素中的所有程序元素)中取消显示指定的编译器警告。

注解的定义与反射调用

注解定义:

package annotation;

public @interface MetaAnnotation {
	String value();
}

 

枚举:

package annotation;

public class EnumTest {
	public enum TrafficLamp {RED,YELLOW,GREEN};
}

 

自定义注解:

package annotation;

import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;

@Retention(RetentionPolicy.RUNTIME)	//保留到运行时,可通过反射获取
@Target(value={ElementType.TYPE,ElementType.METHOD})	//注解有效dest
public @interface CustomedAnnotation {
	//为注解增加各种属性
	int[] arrayAttr() default{3,2,4};		//数组类型的属性
	EnumTest.TrafficLamp lamp();			//枚举类型
    MetaAnnotation annotationArrt() default @MetaAnnotation("xxx");	//	注解类型的属性

}

 

 测试注解:

package annotation;

import java.util.Arrays;

@CustomedAnnotation(lamp=EnumTest.TrafficLamp.GREEN,annotationArrt=@MetaAnnotation("xxx"),arrayAttr=1)
public class AnnotationTest {

	/**
	 * @param args
	 */
	
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		if(AnnotationTest.class.isAnnotationPresent(CustomedAnnotation.class)) {	//判断是否存在 ca字节码
			CustomedAnnotation cusAnn = 
				AnnotationTest.class.getAnnotation(CustomedAnnotation.class);	//获得注解对象 反射
			System.out.println(cusAnn);
			System.out.println(cusAnn.arrayAttr().getClass().getName());
			System.out.println(Arrays.asList(cusAnn.arrayAttr()));
			System.out.println(cusAnn.lamp());
			System.out.println(cusAnn.annotationArrt().annotationType());
		}
	
	}

}
分享到:
评论

相关推荐

    Spring 注解 入门

    Spring注解是Spring框架中的一个重要特性,它极大地简化了配置,提高了代码的可读性和可维护性。在本文中,我们将深入探讨如何使用Spring注解进行属性注入,并重点关注`@Autowired`和`@Qualifier`这两个关键注解。 ...

    基于Spirng MVC注解入门

    **基于Spring MVC注解入门** 在Java Web开发中,Spring MVC框架因其强大的功能和灵活性而备受青睐。Spring MVC是Spring框架的一部分,它提供了一个用于构建Web应用程序的模型-视图-控制器(MVC)架构。本文将深入...

    javaSpring注解入门[参考].pdf

    Java Spring注解入门 Java Spring框架中,注解是一种非常重要的概念,它可以帮助我们简化配置文件的编写,并提高代码的可读性和维护性。在本节中,我们将学习如何使用Spring注解来实现属性的自动装配。 1. 使用...

    struts 注解入门到精通

    struts 注解入门到精通,该文档详细描述了所有的注解,方便大家入门

    Spring注解入门

    本文主要探讨的是Spring注解入门,特别是关于如何使用注解来注入属性,以及与之相关的`@Autowired`和`@Qualifier`注解的使用。 在Spring 3及更高版本中,Spring MVC也广泛采用了注解,使得控制器类的编写更为简洁。...

    注解入门小解

    注解(Annotation)是Java语言中的一个重要特性,它为代码提供了元数据,即关于数据的数据。这些元数据可以被编译器或者在运行时的Java虚拟机(JVM)...提供的注解入门资料将帮助初学者快速上手并掌握这一强大的特性。

    spring注解入门

    ### Spring注解入门 在Java开发领域,Spring框架一直占据着举足轻重的地位,它不仅简化了Java EE的应用开发,还提供了强大的依赖注入(Dependency Injection, DI)和面向切面编程(Aspect-Oriented Programming, ...

    spring_mvc注解入门

    自Spring 2.5版本开始,Spring MVC引入了注解支持,极大地简化了开发过程,减少了XML配置。本文主要介绍如何利用注解来配置Spring MVC,替代传统的基于XML的配置方式。 1. **Controller的定义与管理**: 在传统的...

    hibernate-3.4 注解 入门简单示例

    hibernate-3.4入门的简单示例,用注解的方式操作oracle数据库。源码导入可运行。 还包括hibernate-annotations-3.4.0.GA.zip、hibernate-distribution-3.3.2.GA-dist.zip、slf4j-1.5.8.zip、ojdbc14.jar

    springMVC 注解入门例子

    在这个入门例子中,我们将探讨如何使用SpringMVC的注解来实现用户信息的保存和文件上传功能。 首先,让我们了解SpringMVC的核心组件: 1. **DispatcherServlet**:它是SpringMVC的前端控制器,负责接收HTTP请求,...

    android 注解入门(Acitivity路由demo)

    近期接触了路由和模块间通信的内容,发现Java注解非常常用。 避免后面看各源码被其阻塞,大致了解了下,作此文记录之。 注解类型 @Target @Retention @Documented @Inherited @Target 用于描述注解的使用范围,可能...

    基于Java注解(Annotation)的自定义注解入门介绍

    在Java编程中,注解(Annotation)是一种强大的工具,它允许程序员向源代码中添加元数据,这些元数据可以被编译器或运行时环境用于各种目的,如代码分析、验证、生成代码等。自定义注解是Java注解机制的一个重要方面,...

    java-annotation:Java注解入门教程

    Java注解是Java编程语言中的一个重要特性,它提供了一种元数据的方式,使得开发者可以在代码中添加额外的信息,这些信息可以被编译器或者运行时环境用来进行代码分析、验证或者自动化处理。本教程将带你深入理解Java...

    springmvc入门实例(注解)

    本入门实例将重点介绍如何使用注解来简化Spring MVC的配置,以便快速入门。Eclipse Dynamic Web工程是开发此类应用的常见环境。 首先,我们需要创建一个Eclipse Dynamic Web项目。在Eclipse中,选择"File" -> "New...

    Java注解入门到精通,这一篇就够了

    【Java注解】是Java语言中的一个重要特性,它允许开发者在源代码的各个层次(如类、接口、方法、变量)添加元数据。元数据是关于数据的数据,它不直接影响程序的执行,但能为编译器、工具或运行时环境提供额外的信息...

    使用Spring的注解方式实现AOP入门

    本教程将引导您入门Spring的注解式AOP实现。 首先,我们需要理解AOP的基本概念。AOP的核心是切面(Aspect),它封装了特定的关注点,如日志记录。切点(Pointcut)定义了在何时应用这些关注点,通常是一个方法调用...

    Spring3 MVC Annotaction入门(登录示例)

    **Spring3 MVC 注解入门(登录示例)** 在本文中,我们将深入探讨Spring3 MVC框架中的注解,以及如何利用这些注解构建一个简单的登录应用程序。Spring MVC是Spring框架的一部分,它提供了一种用于构建Web应用程序的...

    springMVC入门框架(非注解)

    本入门教程针对初学者设计,旨在帮助你快速掌握Spring MVC的基本概念和使用方法,而不涉及高级的注解配置。 Spring MVC是Spring框架的一个模块,主要负责处理HTTP请求并返回响应。它遵循Model-View-Controller...

    非注解Springmvc+spring+hibernate 入门实例

    下面我们将深入探讨"非注解SpringMVC+Spring+Hibernate入门实例"中的关键知识点。 首先,让我们从SpringMVC开始。SpringMVC是一个Model-View-Controller架构模式的实现,用于构建Web应用程序。在非注解方式下,我们...

    Android 注解快速入门和实用解析.rar_Android 注解_android

    本篇文章将深入探讨Android注解的快速入门及其实用解析。 注解的种类在Android中多种多样,从基本的`@Override`到自定义注解,它们各有其独特的用途。`@Override`是最常见的注解之一,用于声明一个方法重写了父类的...

Global site tag (gtag.js) - Google Analytics