楼主定义成这样,我感觉有点说不过去,没意义。
如果非要你这样实现的话。
可以修改
void go() {
class A {
void m() {
System.out.println("inner");
}
}
new A().m();
//输出Inner
new ShuChu().new A().m();
//输出middle
new 包名.A().m();
//输出outer
}作者: Just_Only 时间: 2013-1-10 17:41
这样试试 class A {
public void m() {
System.out.println("outer");
}
}
public class ShuChu extends A {
/**
* @param args
*/
public static void main(String[] args) {
new ShuChu().go();
new ShuChu().m();
}
void go() {
class A {
void m() {
System.out.println("inner");
}
}
new A().m();
}
public void m() {
System.out.println("middle");
super.m();
}
}
利用的是super作者: Just_Only 时间: 2013-1-10 17:42
public 可以不要也是行的