泛型限定的范围: * 视频中是这样讲的 * <? extends E类型> 可以用E类型,和E类型的所有的子类。上线 * ? super E 可以接受E类型,或者E的父类型; 下限。 class Utils<qq>{ private qq q; public void setObject(qq q){ this.q = q; } public qq getObject(){ return q; } } 想上边的这个类,我们传的类型是QQ,而QQ, 是视频中老师讲的,E类型,还是 ? 呢? 解答,这个类定义的泛型就相当于E类型,表示这个类型又调用处决定,因为你不知道传进来参数的是什么类型,如果你在外面创建了一个Utils<String> ut = new Utils<String>(); 这时你创建对象时明确的qq是String类型,你再创建一个对象 |
到底是怎么样的呢? |
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) | 黑马程序员IT技术论坛 X3.2 |