JAVA匿名内部类怎么调用外部类的方法

我是设了一个事件监听器,在时间监听器的内部类里调用。外部类的方法... 我是设了一个事件监听器,在时间监听器的内部类里调用。外部类的方法 展开
 我来答
妥协沵旳倔强
2013-10-30 · 超过13用户采纳过TA的回答
知道答主
回答量:23
采纳率:0%
帮助的人:28.1万
展开全部

并不清楚楼主代码需要如何实现。简短例子供参照,如有疑问可追问

public class $ {
    public static void main(String[] args) {
        final A a1 = new A();
        A a = new A(new B() {
            
            @Override
            public void toDo() {
                a1.getB();//调用final对象
                A.test();//或尝试调用静态方法
                //a.getB(); //错误,a未完成初始化,无法被使用
            }
        });
    }
}
class A {
    B b;
    A(){}
    A(B b) {
        this.b = b;
    }
    static void test() {
    }
    public B getB() {
        return this.b;
    }
}
interface B {
    public void toDo();
}
追问

好厉害啊,可以给我你的QQ吗?以后有问题找你。B是匿名内部类吧,那么我是想在B中调用$的其他方法。刚刚调用好了,

追答
= = 我怎么感觉我写的跟你要用的差别很大呢。。 我的QQ是84154025
java4OC33
2015-07-19 · TA获得超过170个赞
知道小有建树答主
回答量:390
采纳率:66%
帮助的人:82.8万
展开全部
外部类名.this.外部类方法

内部类分为:有四种内部类
分别是:静态内部类,成员内部类,局部内部累,匿名内部类。

匿名内部类因为没有类名因此:
1.不能有构造方法

2.不能有任何静态成员方法,或者类

3.不能用修饰符修饰,如public.private,protected

4.必须跟在new一个对象之后
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
gongkai1985
2015-06-24 · TA获得超过226个赞
知道小有建树答主
回答量:246
采纳率:100%
帮助的人:166万
展开全部
外部类的方法必须是static
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友12ee0fd
2015-07-09 · TA获得超过4.7万个赞
知道大有可为答主
回答量:1.1万
采纳率:66%
帮助的人:2282万
展开全部
OuterClass.this.method();
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
人就是无奈
2013-10-30 · TA获得超过152个赞
知道答主
回答量:260
采纳率:0%
帮助的人:99.6万
展开全部
不知道是不是super.method
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 2条折叠回答
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式