上一页 1 ··· 25 26 27 28 29
摘要: 在JDK7以前,Java没有自动关闭外部资源的语法特性,直到JDK7中新增了try-with-resource语法,才实现了这一功能。 将外部资源的句柄对象的创建放在try关键字后面的括号中,当这个try-catch代码块执行完毕后,Java会确保外部资源的close方法被调用。 try-with- 阅读全文
posted @ 2019-06-09 11:20 l2c 阅读(123) 评论(0) 推荐(0)
摘要: 弊端 1.执行的时间不确定,资源释放不能靠这2个方法。Cleaner规范指出:“清除方法在System.exit期间的行为是与实现相关的。不确保清除动作是否会被调用。” 2#.如果忽略在终结过程中被抛出来的未背捕获的异常,该对象的终结过程也会终止。正常情况下,未被捕获的异常会使线程终止,并打印出栈轨 阅读全文
posted @ 2019-06-09 10:44 l2c 阅读(187) 评论(0) 推荐(0)
摘要: 问题由来 数组为基础实现的集合在退出元素时,并不会将引用指向空指针,过期引用存在对象便不会被回收。 措施 1.WeakHashMap当其中的key没有再被外部引用时,就会被回收。ThreadLocal就用到了WeakHashMap 2.LinkedHashMap的removeEldestEntry方 阅读全文
posted @ 2019-06-09 02:18 l2c 阅读(857) 评论(0) 推荐(0)
摘要: HttpObjectAggregator解码器:"http-aggreator" 它的作用是将多个消息转换为单一的FullHttpRequest或FullHttpResponse,原因就是Http解码器(HttpRequestDecoder,HttpResponseEncoder)在每个HTTP消息 阅读全文
posted @ 2019-06-07 23:36 l2c 阅读(169) 评论(0) 推荐(0)
摘要: 弊端: 虽然String.matches方法最易于看一个字符串是否与正则表达式相匹配。但并不适合在注重性能的情形中重复使用。 问题在于,它内部为正则表达式创建了一个Pattern实例,却只用一次,之后就可以进行垃圾回收了。创建Pattern实例的成本很高。因为需要将正则表达式编译成一个有限状态机 为 阅读全文
posted @ 2019-06-07 18:56 l2c 阅读(1262) 评论(0) 推荐(0)
摘要: 实现方式 1.在类的域中创建一个final引用,并将构造器置未private: 2.在通过静态工厂方法: 3.声明一个包含单个元素的枚举类型 反序列化如何保证单例: 对于1和2,在实现Serializable接口的同时要重写readResolve(): 这样当JVM从内存中反序列化地"组装"一个新对 阅读全文
posted @ 2019-06-07 17:59 l2c 阅读(106) 评论(0) 推荐(0)
摘要: 尴尬的多参数构造器: 很多时候我们会碰到有十几二十个成员的类,这让我们用构造器去实例化他们变得不好写,不好读。以往我们有2种解决方法。 1.重叠构造器的使用: 诸如People(int age),People(int age,int sex),People(int age,int sex,Strin 阅读全文
posted @ 2019-06-07 17:20 l2c 阅读(166) 评论(0) 推荐(0)
摘要: 使用场景: 1.静态方法虽同样是为了实例化对象,但是在语法上不需要与类名保持一致,则在命名上更加灵活 更容易表述实例化的目的 2.可以将构造方法private,只通过静态工厂方法做实例化,即不暴露构造器给客户端,而在静态方法中可以做更多的事情(比如单例,根据参数值进行不同的实例化) 3.可以将子类的 阅读全文
posted @ 2019-06-07 16:19 l2c 阅读(632) 评论(0) 推荐(0)
上一页 1 ··· 25 26 27 28 29
点击右上角即可分享
微信分享提示