当前位置: 首页 > 后端技术 > Java

面试八条腿随笔(一)——泛型中extends和super的区别

时间:2023-04-01 19:27:34 Java

之前的总结最近也面临着找工作的压力,所以重新温习下面面试中的千篇一律的作文。由于我的能力,我可能不会记录我认为比较简单的问题,或者我不会的问题。如果有想了解或者了解更多的可以去up主的视频观看学习。感谢大家的观看和讨论up主地址:https://www.bilibili.com/video...正文1.extends和super的作用?回答::T的任何子类,包括T;:任何T的父类,包括T2.泛型如何限制?1.泛型类中的限制publicclassYkList{publicvoidadd(Ee){//...}}publicclassMain{publicstaticvoidmain(String[]args){//错误使用1//YkListykList=newYkList();//正确使用1YkListykList1=newYkList<>();//正确使用2,这两种正确使用的区别如下2.YkListykList2=newYkList();}}2.泛型方法的限制publicclassMain{publicstaticvoidmain(String[]args){//错误使用1//YkListykList=newYkList();//正确使用1,不能添加Float类型,添加参数指定为IntegerYkListykList1=newYkList<>();ykList1.add(newFloat("1"));//正确使用2,可以加上Float类型,不指定添加参数,只要是NumberYkList的子类即可ykList2=newYkList();ykList2.add(newFloat("1"));}}三、如何理解java是伪泛型publicclassMain{publicstaticvoidmain(String[]args){YkListykList1=newYkList<>();YkListykList2=newYkList();/*返回值为true,说明运行时获取的类都是ykList,泛型只在编译时检查。java中的类信息不包含泛型的相关信息*/System.out.println(ykList1.getClass().equals(ykList2.getClass()));}}