Lucene 代码中一段 "return new lock(){...}"这里的大括号怎么解释?
MakeLock方法在Java代码里是这样的: public final Lock makeLock(final String name) { return new Lock() { public boolean obtain() throws IOException { synchronized (files) { if (!fileExists(name)) { createFile(name).close(); return true; } return false; } } public void release() { deleteFile(name); } public boolean isLocked() { return fileExists(name); } }; } 我初学Java 这段程序看不懂,不知道第二行return new lock()之后的大括号这部分该怎么理解,请高手给指点一下了,谢谢。
最满意答案
Lock() { public boolean obtain() throws IOException { synchronized (files) { if (!fileExists(name)) { createFile(name).close(); return true; } return false; } } 类。 new Lock()-->声明一个这个类(匿名类?内部类),并返回结果。 JAVA我不熟悉,感觉像是C#里面的匿名类更多推荐
发布评论