关于泛型

   昨晚终于看tij第15章泛型看完了,看到后期,完全就是看不懂。不过,看完泛型后,就是完全颠覆了自己以前对泛型的理解。以前认为泛型就是为了foreach,其实那是Iterable #tij

   java的设计者们在最初设计时,已经知道了C++的模板,但是没有采用,后来发现问题了,才想要去加泛型,可是对于最初没有加泛型的语言,想要后来才加,难度可想而知。 #tij

   最初作者提出一个疑问,没有泛型时,可能发生在猫的集合里放狗的现象,但是,后来经过调查,这种想象在有经验的程序员身上很难发生,他说,在他身上就从来没有发生过 #tij

   后来他才理解,泛型,不是为了弥补类型,而是一种方法,是为了写出更通用的代码。他也不拿 猫的集合里放狗 来举例说明泛型的必要性了 #tij #generic

   同时,他也指出,相对于猫的集合里放狗这件事,若有经验,完全可以避免,而且相对在java中添加泛型,而带来的一系列麻烦和困难来说,这个可以说是微不足道了。 #tij

   正如C++与C的关系一样,tij作者在总结时说到,已经出现了两种针对java新型语言(名字忘了),运行在java字节码上,但是,有了很好的改进。恩,java将死?

   #tij java泛型其实是伪泛型,最初没有设计,后来加的时候问题颇多,无奈,只好采用了擦除。一个T,在运行时,你其实得不到关于它的任何信息。

   其实这也是包括java在内的强类型语言的悲哀。现在流行的动态语言,都是弱类型,用起来比java爽多了。 #tij #generic

你可能感兴趣的:(java,C++,c,C#)