java泛型和注解

1.泛型

防止数据类型不安全问题的出现

定义一个泛型类,生成对应的get,set,tostring等方法

 在测试类中,使用泛型后,创建的info对象,属性必须是定义的类型,注意:“指定泛型类型时,只能是引用数据类型,不能是基本数据类型”

通配符 

定义一个泛型

 再定义一个普通方法,接收string类型

 在测试类中,引用传递泛型,必须类型相同,泛型相同 

 想让function方法接收任意类型,必须使用通配符

 受限的泛型

引用传递类型可以设置泛型对象的传递上限< ? extends 类>和传递下限<? super 类>

以number为例,泛型上限,定义的类型不能超过Number,只能是Number类型,或Number的子类

 泛型下限则反之,定义的类型不能低于Number,只能是Number类型,或Number的父类

 泛型的接口,第一种方法

为接口添加泛型,使用泛型接口的类,该类在实现时使用的泛型必须和接口的一致

类实现接口时,为其指定泛型类型

 测试类中就不需要再指定类型了

 第二种方法

类实现接口时将该类也设置为泛型类,要和接口泛型一直

测试类中需要指定类型

泛型方法

泛型方法实在方法上定义泛型,和其所在类是否是泛型没有关系

 

2.注解

预定义注解:JDK中自带的注解,JVM会解析

自定义注解 :自己定义的注解(默认注解是没有意义,只有在解析注解时才有意义)

 

使用自定义注解没有任何意义,如果想变的有意义,需要结合反射来解析并赋予作用,@Override注解-->是因为JVM解析了该注解

@Controller-->是因为spring框架解析了该注解

元注解:定义在注解上的注解,是用来限制注解的使用范围

@Retention-->限制注解什么时候生效。

1.SOURCE:源码时生效

 

2.CLASS:字节码时生效
3.RUNTIME:运行时生效

 

@Targrt-->限制该注解可以使用在哪些地方

1.TYPE:使用在类上

 

2.FIELD:使用在属性上
3:METHOD:使用在方法上
4,PARAMETER:使用在参数上
5,CONSTRUCTOR:使用在构造方法上

@Documented-->生成api文档时是否含有该注解

 注意:代码页面不能加中文注释

 

 自定义注解--属性

数据类型可以用:基本类型(8个),字符串类型,和这些类型的数组

 

 

 

 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值