1.嘗試在方法中編寫一個匿名內部類。
package com.lzw;
public class AnonymityInnerClass {
}
class OuterClass4{
public OutInterface doit(final String s){
return new OutInterface(){
private int i=0;
public int getValue(){
System.out.println(s);
return i;
}
public void f(){
System.out.println("f()");
}
};
}
}
interface OutInterface { // 定義一個接口
}
匿名內部類:new OutInterface(){
.......
}寫在了外部類Outerclass4的方法中。
2.嘗試將主方法編寫在靜態內部類中。
package com.lzw; public class StaticInnerClass { int x=100; static class Inner{ void doitInner(){ //System.out.println("外部類"+x); } public static void main(String args[]){ System.out.println("a"); } } }
注:靜態內部類的最大特征就是不能使用外部類的非靜態成員。
3.嘗試編寫一個靜態內部類,在主方法中創建其內部類的實例。
package test;
public class StaticInnerClass {
static class a{
void f(){
System.out.println("f()");
}
}
public static void main(String args[]){
StaticInnerClass.a a=new a();
a.f();
}
}
