java8新特性终-重复注解和类型注解(内含福利)

自定义注解

import java.lang.annotation.Repeatable;
import java.lang.annotation.Retention;
import java.lang.annotation.Target;


@Repeatable(MyAnnotions.class)//需要使用重复注解指定容器
@Target(value={java.lang.annotation.ElementType.TYPE,java.lang.annotation.ElementType.FIELD,java.lang.annotation.ElementType.METHOD,java.lang.annotation.ElementType.PARAMETER,java.lang.annotation.ElementType.CONSTRUCTOR,java.lang.annotation.ElementType.LOCAL_VARIABLE,java.lang.annotation.ElementType.TYPE_PARAMETER})
//目标  TYPE_PARAMETER  类型注解
@Retention(value=java.lang.annotation.RetentionPolicy.RUNTIME)//生命周期
public @interface MyAnnotation {
   
	String value()default "test01";
	
}

自定义注解如果不太明白的可以看我博客中的另一文章元注解

重复注解需要的容器类

import java.lang.annotation.Retention;
import java.lang.annotation.Target;
import static java.lang.annotation.ElementType.TYPE;
import static java.lang.annotation.ElementType.FIELD;
import static java.lang.annotation.ElementType.METHOD;
import static java.lang.annotation.ElementType.PARAMETER;
import static java.lang.annotation.ElementType.CONSTRUCTOR;
import static java.lang.annotation.ElementType.LOCAL_VARIABLE;
//重复注解需要的容器

@Target(value={TYPE,FIELD,METHOD,PARAMETER,CONSTRUCTOR,LOCAL_VARIABLE})//目标
@Retention(value=java.lang.annotation.RetentionPolicy.RUNTIME)//生命周期
public @interface MyAnnotions {
	MyAnnotation[] value();
}

测试类

//重复注解和类型注解
public class TestAnnotion {
	
	@MyAnnotation("hello")
	@MyAnnotation("java")
	public void show(@MyAnnotation("A") String a){
		
	}
	@Test
	public void test01() throws Exception{
		Class<TestAnnotion> clazz=  TestAnnotion.class;
		Method[] me=clazz.getMethods();
		for (Method method : me) {
			MyAnnotation[] annotationsByType = method.getAnnotationsByType(MyAnnotation.class);
			for (MyAnnotation myAnnotation : annotationsByType) {
				System.out.println(myAnnotation.value());//输出hello  java
			}
		}
	}
}

    总结:差不多2周的时间初步学习了java的新特性,因为项目上刚好使用的时1.8,便找时间学习了下,在实际开发中

也多少应用了一部分,确实 方便了很多,只是犹豫有的语法或函数什么的记得不是很牢固,使用起来也不是特别熟练,不过多多使用,最后肯定就会和你写sql一样的熟练,真实体验:java8-牛逼~。少写了很多代码,少了好多对象。。。。

最后,感谢尚硅谷的视频,比起之前看别人的博客,讲的很清楚,循序渐进。感谢。

尚硅谷java8  密码:su94

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值