发现java的泛型极其恶心
刚叛逃不久,决定写一个泛型的单例模式,大悲咒啊。。。。
------解决方案--------------------public static <T> T foo(X<T> param)
比如
public static <T> T foo(Class<T> clazz)
String str = foo(String.class);
------解决方案--------------------恭喜楼主于2013-04-25 13:11:39 叛逃JAVA阵营成功,至今已有 2天2小时49分钟。
------解决方案--------------------如果写API、写框架给别人用的话,就要学好泛型和反射。
------解决方案--------------------泛型很好用啊,关键在于理解
------解决方案--------------------泛型的目的就是编译器给我们做了一个类型的验证:obj instanceof T
这样,执行时发生的问题,在编译时就给你提示出来了,减少了维护成本。
------解决方案--------------------Java的泛型被鄙视了,不过个人觉得还是蛮好用的
------解决方案--------------------最恶心的貌似是
public static <T extends Comparable<? super T>> void sort(List<T> list)
这样的
------解决方案--------------------Python表示不屑,其他语言的泛型都弱爆了
------解决方案--------------------java的范型就是垃圾,因为在编译时会自动擦除
连语法糖都称不上
------解决方案--------------------一直Object的路过
------解决方案--------------------泛型实现单例模式,会有一个问题要解决,一般单例模式都是构造函数是私有的,泛型无论什么样的实现方法会因为构造函数是私有的而无法创建对象,所以除了用类似反射的方法调用私有的构造函数之外都无法完美实现泛型式的单例模式。泛型虽好,但不要滥用。
------解决方案--------------------LZ怎么有这样的感慨呢,这个只是个人的看法吧,再者说了,任何东西都有其两面性,不能一棒子将其打死啊