Java 泛型个人理解

为什么要用到泛型?

举个例子,传统在List中添加三个car对象,其中程序员一不小心在其中添加了存在的cat对象,这时编译器也不会报错,这就引出了传统方法的两个问题

1、不能对加入到List集合中的数据类型进行约束,不太安全

2、遍历的时候,需要要进行类型转换,如果集合中数据大,影响效率

 

这时,我们就可以定义List<Car>,这样在编译的时候,如果发现类型不对,就会报错,而且在遍历时就可以直接取出Car而不是object

 

这时我们总结出泛型的好处

1、编译时,检查元素类型,大大提高了安全性

2、减少了类型转换次数,提高了效率

 

那么,什么是泛型

1、泛型又称参数化类型,是jdk5.0后出现的新特性,解决数据类型安全性问题

2、在类声明或实例化时只需要指定的具体类型即可

3、Java泛型可以保证如果程序在编译时没有发生警告,运行时就不会产生ClassCastExcption异常。

 

泛型的作用是:可以在类声明时通过一个标识表示类中某个属性的类型,或者是某个方法的返回值的类型,或者是参数类型。

 

泛型的声明

a579f34feef3414aa2af07ce766f889d.jpg

 

泛型的实例化

需要在类名后面指定类型参数的值(类型)

如:List<String> sr =new ArrayList<String>()。

 

自定义泛型类(难度较高)

class 类名<T,R,.....>{//.....表示可以有多个

成员

}

1、普通成员可以使用泛型

2、使用泛型的数组不能初始化

3、静态方法中不能使用类的泛型

4、泛型类的类型,是在创建对象时确定的

5、创建对象时没有指定默认是object

  • 15
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值