class Out{
class In{
void show(){
System.out.println("haha");
}
}
//new In().show();编译失败 不会运行
void method(){
new In().show();
}
}
public class Temp {
public static void main(String[] args) {
//new Out().method();
//直接访问外部类中的内部类中的成员。
Out.In in = new Out().new In();
in.show();
}
}
public class Temp {
class In{
void show(){
System.out.println("haha");
}
}
public static void main(String[] args) {
//new In().show(); 可以运行 主方法可以运行
// 但报错因为 主方法是静态的 内部类要加static
}
void method(){
new In().show(); //可以应为有 this.new In();
}
}
class Outer
{
void method()
{
Object obj = new Object()
{
public void show()
{
System.out.println("show run");
}
};
//obj.show();//因为匿名内部类这个子类对象被向上转型为了Object类型。
//这样就不能在使用子类特有的方法了。
new Object()
{
public void show()
{
System.out.println("show run");
}
}.show();
}
}
class Temp
{
public static void main(String[] args)
{
new Outer().method();
}
}