视频中IPlayGame ip3=new IPlayGame是什么意思啊,应该不是接口实例化,匿名内部类到是什么。
new IPlayGame() {}是在堆内存中创建一个实现了IPlayGame接口的的匿名内部类的对象,IPlayGame ip3=XXX是在栈内存中创建了IPlayGame类型的引用,再用这个引用指向那个对象
匿名内部类是一个没有类名的类,视频中IPlayGame ip3=new IPlayGame() {
@Override
public void m() {
// TODO Auto-generated method stub
System.out.println("匿名内部类");
}
};直接创建了一个接口对象并实例化,