首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何从封闭的外部类中调用与匿名类中实现的方法同名的方法?

从封闭的外部类中调用与匿名类中实现的方法同名的方法的方法有两种:

  1. 使用类名.方法名的方式调用:如果封闭的外部类与匿名类属于同一个类或者接口,可以使用"类名.方法名"的方式调用匿名类中的方法。例如,如果封闭的外部类为MainClass,匿名类为AnonymousClass,两者都实现了一个同名的方法testMethod(),可以通过MainClass.testMethod()来调用封闭类中的方法,而通过AnonymousClass.testMethod()来调用匿名类中的方法。
  2. 在匿名类中创建一个新的方法来调用:如果封闭的外部类与匿名类不属于同一个类或者接口,可以在匿名类中创建一个新的方法,然后在该方法中调用匿名类中的方法。例如,如果封闭的外部类为MainClass,匿名类为AnonymousClass,可以在MainClass中定义一个方法callAnonymousMethod(),在该方法中通过AnonymousClass的实例调用匿名类中的方法。

下面是一个示例代码:

代码语言:txt
复制
public class MainClass {
    public void callAnonymousMethod() {
        AnonymousClass anonymous = new AnonymousClass();
        anonymous.testMethod(); // 调用匿名类中的方法
    }
    
    public static void main(String[] args) {
        MainClass main = new MainClass();
        main.callAnonymousMethod(); // 调用封闭类中的方法
    }
}

interface SomeInterface {
    void testMethod();
}

class AnonymousClass implements SomeInterface {
    @Override
    public void testMethod() {
        System.out.println("调用匿名类中的方法");
    }
}

在上述代码中,封闭的外部类为MainClass,匿名类为AnonymousClass,它们都实现了SomeInterface接口,并且都有一个同名的testMethod()方法。在callAnonymousMethod()方法中,通过AnonymousClass的实例调用了匿名类中的testMethod()方法。在main()方法中,通过MainClass的实例调用了封闭类中的testMethod()方法。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

12分59秒

day28_反射/27-尚硅谷-Java语言高级-调用运行时类中的指定方法

12分59秒

day28_反射/27-尚硅谷-Java语言高级-调用运行时类中的指定方法

12分59秒

day28_反射/27-尚硅谷-Java语言高级-调用运行时类中的指定方法

8分31秒

day22_枚举类与注解/07-尚硅谷-Java语言高级-Enum类中的常用方法

8分31秒

day22_枚举类与注解/07-尚硅谷-Java语言高级-Enum类中的常用方法

8分31秒

day22_枚举类与注解/07-尚硅谷-Java语言高级-Enum类中的常用方法

13分43秒

第十八章:Class文件结构/27-方法中Code属性的解读

13分17秒

002-JDK动态代理-代理的特点

15分4秒

004-JDK动态代理-静态代理接口和目标类创建

9分38秒

006-JDK动态代理-静态优缺点

10分50秒

008-JDK动态代理-复习动态代理

15分57秒

010-JDK动态代理-回顾Method

领券