《黑马程序员javaweb教程:泛型的边界(共1页).doc》由会员分享,可在线阅读,更多相关《黑马程序员javaweb教程:泛型的边界(共1页).doc(1页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
精选优质文档-倾情为你奉上泛型的边界编译期状态:编译期状态,例如内部类!内部类就是只有编译器知道,而JVM不知道什么叫内部类!1泛型的擦除泛型其实是编译期状态,即JVM不知道什么是泛型,在JVM那里所有类都是正常的类。没有类型变量。一切的一切都是编译器干的好事儿!其实List的get()方法返回值还是Object,只是编译器帮我们添加了强转的语句。但这个强转一定不会出现问题。因为本来add()方法添加元素已经限制过了,那么在get()时,一定不会出现强转的问题。也就是说,在ArrayList类中持有的还是Object类型,而不是我们指定的类型。当然,就算是JVM没有泛型,但编译器会帮我们完成这些问题,我们就可以当泛型真的存在。2泛型边界限定的类型值的范围通常我们看到的泛型类都没有边界限定,也就是说可以给泛型类的类型变量赋任意类型的值(当然基本类型是不可以的)。java允许给类型变量指定边界,这样用户在给类型变量赋值时就必须在边界之内。public class A 表示用户可以给T赋值为Number或Number的子类型。例如:new A()这是可以的,但new A()是不可以的。专心-专注-专业