Java: finally 总是会被执行
finally 总是会被执行,即使 try 中有 break、continue、return,如:
finally 总是会被执行,即使 try 中有 break、continue、return,如:
try 块里有异常抛出时,程序会进入 第一个 异常类型匹配的 catch 块执行,其他的 catch 块不执行。
Iterable 是一个接口,它只有一个方法 iterator(),要求返回一个 Iterator。
Arrays.asList() 这个方法有点特殊,这里记录一下。
类和类之间有 3 种关系:组合、继承和代理 (proxy)。
前面对继承的理解常常用到了这么一用表述:Base 的代码会被复制到 Ext 中。其实这么理解欠妥,看代码:
首先我们明确下 “enclose” 这个单词的逻辑关系:OuterClass encloses InnerClass,所以外部类就是 enclosing class,内部类是 enclosed class。
如果把 {...} 这么一段称为 “域”,那么方法 body 明显是一个域,方法 body 中的 if {} 或是 for {} 之类的也是域。在方法 body 或是方法 body 中其他域里定义的类就是局部内部类。
class Outer { public class Inner { public String getInnerClassName() { return Inner.this.getClass().toString(); // 'Inner' can be omitted here...