Java内部类和匿名内部类
接口:
interface IInnerlClassTest { public void testFun(); }
实现类:
public class InnerClassTest { /* * 内部类 * */ public class InnerClass implements IInnerlClassTest { public void testFun() { System.out.println("Testing!"); } } public void get(IInnerlClassTest _iict) { _iict.testFun(); } /* * 内部类具体实现方法 * */ public void test() { this.get(new InnerClass()); } /* * 匿名内部类具体实现方法,特点不用再显示声明内部类, * 直接根据接口生成具体的实例*/ public void NonInnerTest() { this.get(new IInnerlClassTest() { public void testFun() { System.out.println("No Name's Inner Class"); } }); } }
入口类:
public class ExecInnerlClass { public static void main(String[] args) { InnerClassTest _InnerClassTest=new InnerClassTest(); _InnerClassTest.test(); _InnerClassTest.NonInnerTest(); } }