1.问题在于这句:
wo abc = new wo();
如果将wo类声明为static class wo,就可以运行成功了。这等价于:
welcome.wo abc = new welcome.wo(); 如果你不如此声明,那么wo类和外面的类(enclosing class)之间存在一种关系。如果你打算创建一个wo类的实例,你得先拥有一个welcome类的实例。像这样:
welcome w = new welcome();
wo abc = w.new wo();//怪异的语法,but works!!
wo abc = new wo();
如果将wo类声明为static class wo,就可以运行成功了。这等价于:
welcome.wo abc = new welcome.wo(); 如果你不如此声明,那么wo类和外面的类(enclosing class)之间存在一种关系。如果你打算创建一个wo类的实例,你得先拥有一个welcome类的实例。像这样:
welcome w = new welcome();
wo abc = w.new wo();//怪异的语法,but works!!
那麽关于第2个问题呢?我想知道当test类被创建出来以后,使用get方法,return出的是一个可直接使用的实例,还是只是一个引用(也就是说要new一下)。
2.你现在的写法.abc只是一个引用,它的地址在栈中,它可以用类中任何的东西,