在网上看到如下一段话:Anonymous Inner Class (匿名内部类) 是否可以extends(继承)其它类,是否可以implements(实现)interface(接口)? 
匿名的内部类是没有名字的内部类。不能extends(继承) 其它类,但一个内部类可以作为一个接口,由另一个内部类实现。--------------------------
不懂 “一个内部类可以作为一个接口,由另一个内部类实现。” 这话是什么意思?
谁可以 写个程序演示一下?另外 大家在开发过程中什么场合下会用到 Anonymous Inner Class  ? 这中class 在实际应用中有啥优势吗谢谢大家 

解决方案 »

  1.   


    public class TestInnerClass {
    public interface T1 {
    void Test();
    } public static interface T2 {
    void Test2();
    }  class IImpl implements TestInnerClass.T1 { @Override
    public void Test() {
    System.out.println("IImpl Test");
    }
    }  class IImpl2 implements TestInnerClass.T2 { @Override
    public void Test2() {
    System.out.println("IImp2 Test");
    }
    } public static void main(String[] args) {
    TestInnerClass t = new TestInnerClass();
    TestInnerClass.T1 i = t.new IImpl();
    i.Test();
    TestInnerClass.T2 i2 = t.new IImpl2();
    i2.Test2();
    }
    };
      

  2.   

    jdbcTemplate中的方法就用到了实现接口的匿名内部类getJdbcTemplate().execute(SQL_UPDATE_USER_PROFILE,
    new PreparedStatementCallback() {
    public Object doInPreparedStatement(PreparedStatement ps)
    throws SQLException, DataAccessException {