界面:
public interface MyFirstInterface {
void myFirstAbstractMethod();
default void myDefaultMethod() {
System.out.println("Hi I am default method in Interface.");
}
}
类别:
public class MyFirstClass{
public static void main(String[] args) {
MyFirstInterface myFirstInterface = new MyFirstInterface() {
@Override
public void myMethod() {
System.out.println("Main class : "+this.getClass());
}
};
myFirstInterface.myMethod();
myFirstInterface.defaultMethod();
}
}
现在我们知道我们正在实例化一个匿名类,我想知道的是为什么有人会使用它?这样做有什么好处或缺点?
答案 0 :(得分:0)
它不是构造函数。这是一个方法a()
声明,返回类型为A
。
此外,我们可以使用匿名类实例化接口。例如Runnable
:
Runnable r = new Runnable() {
@Override
public void run() { ... }
};
Runnable r = () -> { ... }