正在回答
同学你好,
1、关于泛型,目前阶段应用比较多的是在List 以及 Map 中进行使用, 例如 List<String> list = new ArrayList<String> (); 这样写上泛型,我们就能规定,这个List中只能添加Stirng类型的数据了。Map中同理。
2、public void two(List<? extends Animal> list) 的意思是,传入的参数必须是List ,并且这个list中存的必须是 ? extends Animal。 (一般我们这里是写具体的泛型的而不是用<? extends Animal>,因为这样只有null可以添加到这个list中去)。 例如:List<Animal> list = new ArrayList<Animal>(); list中只能存放Animal或者其子类 并且没有同学one的这种写法,编译就是不通过的
同学是想问以下图片这种嘛?
如果是,则前边的<T> 表示这是一个泛型方法。如果不写,直接写后边的泛型参数是会报错的哦
这里同学记住是泛型方法的写法就可以了。 在目前阶段,List和Map中应用泛型比较多,在底层的代码中,会用到泛型方法等,例如反射等,同学现在不必纠结,先记住现在的应用就可以。
如果我的回答解决了你的疑惑,请采纳,祝学习愉快~
同学你好,使用泛型可以提高java程序的类型安全,泛型也可以使编译器知道变量的类型限制,进而可以在更高程度上验证类型假设。如果不用泛型,则使用强制类型转换,而强制类型转换不安全,在运行期可能发生ClassCast Exception异常,如果使用泛型,则会在编译期就能发现该错误。具体案例,老师在1-1小节(0.18分)中有具体讲解,同学可以进行查看:https://class.imooc.com/lesson/995#mid=23654
如果我的回答解决了你的疑惑,请采纳!祝学习愉快!
- 参与学习 人
- 提交作业 3802 份
- 解答问题 11489 个
本阶段带你迈入Java世界,学习Java必备基础知识,基础语法、面向对象思想以及常用工具类的使用。
了解课程
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
0 星