为了账号安全,请及时绑定邮箱和手机立即绑定

求助,匿名内部类问题,谢谢!

package HM;
interface inter{
	public abstract void sleep();
}
public class HelloWorld {
public static void main(String[] args){
	ff(new inter(){//使用匿名内部类创建接口的对象
		public void sleep(){
			System.out.println("睡觉");
		}
		public void eat(){
			System.out.println("吃饭");
		}
	});
	
	}
public static void ff(inter in){
	in.sleep();

}
}

请问,如果我想调用匿名内部类中的.eat方法,该如何操作?

正在回答

2 回答

在接口中定义eat抽象方法,再在ff中调用in.eat()

0 回复 有任何疑惑可以回复我~
#1

不是咸鱼 提问者

非常感谢!
2016-12-08 回复 有任何疑惑可以回复我~
#2

不是咸鱼 提问者

感谢!
2016-12-08 回复 有任何疑惑可以回复我~
#3

qq_no_8

为什么还有一个sleep方法呢
2016-12-15 回复 有任何疑惑可以回复我~

package com.imooc;


interface inter{

    public abstract void sleep();

    public abstract void eat();

}

public class HelloWorld {

public static void main(String[] args){

    ff(new inter(){//使用匿名内部类创建接口的对象

        public void sleep(){

            System.out.println("睡觉");

        }

        public void eat(){

            System.out.println("吃饭");

        }

    });

     

    }

public static void ff(inter in){

    in.sleep();

    in.eat();

   

}

}


0 回复 有任何疑惑可以回复我~
#1

不是咸鱼 提问者

非常感谢!
2016-12-12 回复 有任何疑惑可以回复我~
#2

qq_no_8

主函数里面先执行 ff 静态方法 同时实例化接口并赋给 in 对象 。in对象可以调用接口的抽象方法。请问,是这过程吗?
2016-12-15 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
Java入门第二季 升级版
  • 参与学习       530632    人
  • 解答问题       6091    个

课程升级!以终为始告别枯燥,在开发和重构中体会Java面向对象编程的奥妙

进入课程

求助,匿名内部类问题,谢谢!

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信