Java 我可以在实例化匿名类时实现接口吗?
假设我有一个抽象类Java 我可以在实例化匿名类时实现接口吗?,java,instantiation,anonymous-class,Java,Instantiation,Anonymous Class,假设我有一个抽象类factorzeddialog。看起来是这样的(请注意,这只是一个虚拟示例) 现在我可以这样做: FactorizedDialog dialog = new FactorizedDialog() { @Override public void myMethod() { // implementation here } } 正如您可能猜到的,我扩展Dialog(实际上是一个
factorzeddialog
。看起来是这样的(请注意,这只是一个虚拟示例)
现在我可以这样做:
FactorizedDialog dialog = new FactorizedDialog() {
@Override
public void myMethod() {
// implementation here
}
}
正如您可能猜到的,我扩展Dialog(实际上是一个抽象类)只是为了向它添加一个方法,以便在创建匿名类时可以重写它。当我实例化Dialog而不是使用派生的抽象类时,是否可以在java中实现接口?否,当指定匿名内部类的超类时,可以指定要扩展的普通类或接口,但不能同时指定两者。中所示的语法根本不允许两者都使用。如果您指的是下面的
对话框
是一个接口,那么可以这样做
Dialog dialog = new Dialog() {
@Override
public void myMethod() {
}
}
当然,
myMethod
的声明应该进入对话框
界面。正如我提到的,这两个都是抽象类。@edem是的,我在发布我的答案后注意到了这一点。
Dialog dialog = new Dialog() {
@Override
public void myMethod() {
}
}