使用Java范型的注意事项

    作者:Gman更新于: 2018-03-14 18:25:53

    大神带你学编程,欢迎选课

      java技术具有卓越的通用性、高效性、平台移植性和安全性,广泛应用于PC、数据中心、移动电话和互联网等等,同时拥有全球最大的开发者专业社群。今天就跟着小编一起来看一看:使用Java范型的注意事项。

      在这一篇教程里面,小编主要和大家简单的介绍一下:使用Java范型的注意事项,主要有九点,有兴趣的朋友可以跟着小编一起来学习一下。具体的注意事项如下所示:

      注意事项一:在非范化类型里面的实例方法,假如说大家要想范化的话,那么也需要制定它的类型参数哦。

    使用Java范型的注意事项_Java高级工程师_Java工程师_Java基础_课课家

      注意事项二:另外一个方面,静态方法假如说要想范化的话,同样也需要指定它的类型参数。

      注意事项三:在这里大家都需要注意一点,那就是范型不是协变的,换一句话来说,也就是List不是List的子类。

      注意事项四:范化类型里面的实力方法能够直接使用其类型本身的类型参数。

      注意事项五:构造延迟,在代码编写的时候我们不能够直接通过类型参数来构造一个该类型的实例。有人就会问小编,这是为什么呢?主要的原因是我们不知道究竟怎样才可以构造,类型参数的实际类型是在运行的时候确定的。

      注意事项六:不能够直接实例化范型类型的数组,也就是newList[3]是不合法的,除非类型参数是一个未绑定的通配符,也就是newList<?>[3]是合法的。

      注意事项七:上面的数组构造是不被推荐的,就小编个人认为,最好的实现方法是将类型信息传递到方法里面,就比如说:method(Classtype){V[]array=(V[])Array.newInstance(type,length);}。在这里的话,大家能够参考ArrayList类的toArray(T[]a)方法的实现。

      注意事项八:构造通配符引用,假如说set是一个Set<?>类型,那么Set<?>set2=newHashSet<?>(set);这是不合法的,修改成为Set<?>set2=newHashSet(set);就合法了。

      注意事项九:对于注意事项六所描述的问题我们有一个解决方法,具体的解决方法如下所示:Listlist=(List[])newObject[3];但是假如说是运行的时候建立数组呢,类型信息是运行的时候确定的,那么就换一种写法吧,具体的写法如下所示:T[]tarray=(T[])newObject[3]。是不是非常的神奇呢?大家不妨来尝试一下哦。

      小编总结:

      Java自面世后就非常流行,发展迅速,对C++语言形成有力冲击。在全球云计算和移动互联网的产业环境下,Java更具备了显著优势和广阔前景。希望通过这一篇教程,大家对于Java语言的了解更近一步哟。

    未登录

    1