黑马程序员技术交流社区

标题: 回答问题时看到不懂的一个知识 [打印本页]

作者: 常佳杰    时间: 2012-6-18 14:46
标题: 回答问题时看到不懂的一个知识
public class BaseClass {
BaseClass() {
  method();
}
public void method() {
  System.out.println("BaseClass的方法");
}
}
class SupClass extends BaseClass
{
        private String str = "supClass";
        public void method()
        {        
                //super(); 下面代码是用匿名内部类实现对method的重写,也就是用的是父类的方法,但是方法体是子类的
                new BaseClass()
                        {
                                public void method()
                                {
                                        System.out.println("SupClass.method()");
                                        System.out.println(str);//如果这样写的话,这里就有个问题出现了,str是什么时候被初始化成null的,父类是不存在str的引用
                                }
                        }.method();        
        }
}红色字体部分的详细解释?




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2