
EJ
hjvgf
这个作者很懒,什么都没留下…
展开
-
Effective java笔记-泛型
泛型第23条 请不要在新代码中使用原生态类型书上示例代码:public class Raw { // Uses raw type (List) - fails at runtime! - Page 112 public static void main(String[] args) { List<String> strings = new ArrayList<Str原创 2017-03-04 21:35:18 · 340 阅读 · 0 评论 -
Effective Java笔记-创建和销毁对象
创建和销毁对象第一条 考虑用静态工厂方法代替构造器优势一 它们有名称当一个类需要多个带有相同签名的构造器时,就用静态工厂方法代替构造器,并且慎重的选择名称以便突出他们之间的区别。优势二 不必在每次调用它们的时候都创建一个新对象实例受控的类指的是总能严格控制在哪个时刻哪些实例应该存在。静态工厂方法可以实现实例受控的类。创建实例受控的类的原因: 1.实例受控的类可以确保它是一个Single原创 2017-03-06 20:51:01 · 468 阅读 · 0 评论 -
Effective java笔记-第四章
类和接口第十三条使类和成员的可访问性最小化应该使用与你正在编写的软件的对应功能相一致的、最小的访问级别对于顶层的类(顶层是指非嵌套的类)和接口只有两种可能的访问级别:包级私有和公有的。如果类或接口可以被做成包级私有的就应该做成包级私有的,这样这个类实际成了这个包的实现的一部分,可以在以后对他修改,替换而不用担心影响到客户端程序,如果做成公有的,你就有责任永远支持它的兼容性。 如果一个包级原创 2017-04-07 11:55:38 · 760 阅读 · 0 评论 -
Effective java笔记-方法
第38条 检查参数的有效性1.这是“应该在发生错误之后尽快检测出错误”这一普遍原则的一个具体情形,这可以使发生错误的时候更容易确定错误的根源2.assert 语句,断言如果失败,将会抛出AssertionError。 在生产环境中,一般是不支持assert的,因此这样可以提高效率,没有成本开销。所以,assert只在私有方法中使用,因为私有方法的调用者开发者,他和被调用者之间是一种弱契约关系,或原创 2017-04-12 19:58:16 · 385 阅读 · 0 评论 -
Effective java笔记-通用程序设计
第45条 将局部变量的作用域最小化要使局部变量的作用域最小化,最有力的方法就是在第一次使用它的地方声明几乎每个局部变量的声明都应该包含一个初始化表达式第46条 for-each循环优先于传统的for循环不过有三种情况无法使用for-each循环:1.过滤:遍历集合并删除指定元素,需要迭代器以便调用remove 2.转换:遍历列表或数组,并取代它部分或全部的元素值,需要迭代器或数组索引,原创 2017-04-14 16:33:39 · 321 阅读 · 0 评论 -
Effective java笔记-第九章-异常
第57条:只针对异常的情况才使用异常try{ int i = 0; while(true){ range[i++].climb(); }catch(ArrayIndextOutOfBoundsException e){ }}这段代码可以利用catch来终止无限循环,但这段代码有一下几个缺点:1.模糊了代码的意图2.把代码放在try-catch快中原创 2017-05-02 12:43:55 · 269 阅读 · 0 评论 -
Effective java-并发 笔记
第66条 同步访问共享的可变数据1.同步仅仅意味着互斥访问吗? 不是,同步一方面意味着互斥访问,这保证了同步操作的原子性,可以防止线程访问到对象的不一致状态;另一方面,同步意味着保证可见性,他保证进入同步方法或者同步代码快的每个线程,都看到由同一个锁保护的之前所有的修改效果.2.为了提高性能,在读或者写原子数据的时候,应该避免使用同步,对吗? 不对,虽然原子数据的读或写是原子的..,原创 2017-05-18 11:06:42 · 438 阅读 · 0 评论 -
Effective Java笔记-序列化
谨慎地实现Serializable接口1.代价一:一旦这个类被发布,就大大降低了"改变这个类的实现"的灵活性:如果一个类实现了Serializable接口,它的字节流编码就变成了它的导出API的一部分,你必须永远支持这种序列化形式.2.默认的序列化形式跟类的内部表示法有关(包括类中私有和包级私有的实例域,这意味着类中私有和包级私有的实例域都将变成导出的API的一部分,这不符合"最低限度地访问域"的原创 2017-05-18 19:19:53 · 327 阅读 · 0 评论