Effective Java 读书笔记(7)

   45,最小化局部变量的作用范围。
    46,使用for-each循环代替传统的循环方式。当然for-each只能是单向只读的,不能完全代替for循环。记得上次在水木看的有人说这两种循环的语义也是不一样的,生成的虚拟机代码有区别,有机会研究一下。
    47,使用标准库。不要自己造轮子。
    48,如果需要精确的值,不要使用float和double。嗯,用BigDecimal。
    49,基本类型优于包装类型。尤其要注意在比较值的时候,不要一不小心在包装类型上用了==操作符。当在同一个操作中使用了基础类型和包装类型时,包装类型会被自动拆箱。
    50,在其他类型更合适的时候,不要使用String。
    51,注意字符串连接的性能问题。不要使用+,多用StringBuilder。其实JVM可以自动优化字符串常量的+操作,这个不用操心,但是常量+变量就不能优化了,必需得用StringBuilder。
    52,使用接口来引用对象。这和第40条讨论的差不多。用接口,便于以后修改实现。但是也不要强求,如果没有合适的接口,就使用类好了。我的某些同事做项目时,就一个DAO,还非得定义一个接口,然后写个DAOImpl,真是不怕累啊。
    53,用接口而不是反射。嗯,除了那些框架,自己写代码应该不需要通过反射去访问对象。
    54,谨慎的使用本地代码。现在一般人写代码也很少要用到JNI了。
    55,谨慎的优化。写好的程序而不是快的程序。
    56,遵守常用的命名方式。

你可能感兴趣的:(Effective Java)