泛型可以减少强制类型的转换,可以规范集合的元素类型,还可以提高代码的安全性和可读性,正式因为有这些优点,自从Java引入泛型后,项目的编码规则上便多了一条:优先使用泛型。 反射可以“看透” 程序的运行情况,可以让我们在运行期知晓一个类或实 ...
泛型可以减少强制类型的转换,可以规范集合的元素类型,还可以提高代码的安全性和可读性,正式因为有这些优点,自从Java引入泛型后,项目的编码规则上便多了一条:优先使用泛型。
反射可以“看透” 程序的运行情况,可以让我们在运行期知晓一个类或实例的运行状况,可以动态的加载和调用,虽然有一定的性能忧患,但它带给我们的遍历远远大于其性能缺陷。
建议93:Java的泛型是可以擦除的
Java泛型(Generic) 的引入加强了参数类型的安全性,减少了类型的转换,它与C++中的模板(Temeplates) 比较类似,但是有一点不同的是:Java的泛型在编译器有效,在运行期被删除,也就是说所有的泛型参数类型在编译后会被清除掉,我们来看一个例子,代码如下:
1 public class Foo { 2 //arrayMethod接收数组参数,并进行重载 3 public void arrayMethod(String[] intArray) { 4 5 } 6 7 public void arrayMethod(Integer[] intArray) { 8 9 }10 //listMethod接收泛型List参数,并进行重载11 public void listMethod(List<String> stringList) {12 13 }14 public void listMethod(List<Integer> intList) {15 16 }17 }
原标题:编写高质量代码:改善Java程序的151个建议(第7章:泛型和反射___建议93~97)
关键词:JAVA
*特别声明:以上内容来自于网络收集,著作权属原作者所有,如有侵权,请联系我们:
admin#shaoqun.com
(#换成@)。