package contract;
public interface ISay {
void sayHello();
}
package jimmy;
import contract.ISay;
public class Program {
public static void main(String[] args) {
ISay say = new ISay() {
public void sayHello() {
System.out.println("Hello java!");
}
};
}
}
初看上去,就好像在“不提供接口实现的情况下,直接new了一个接口实例”。观察bin目录下的class输出,会发现有一个类似Program1.class的文件,如果反编译观察一下
package jimmy;
import contract.ISay;
import java.io.PrintStream;
class Program$1
implements ISay
{
public void sayHello()
{
System.out.println("Hello java!");
}
}
最后欢迎大家访问我的个人网站:1024s