标签:
内部类的访问规则:4,匿名内部类其实就是一个匿名子类对象。而且这个对象有点胖。可以理解为带内容的对象。
interface Inter//接口中的成员为常量(public static final ...)和抽象方法(public abstract)。接口中的成员都是public ,所以在实现接口的类在覆盖接口成员时,修饰符必须为public。 { public static final int x=9; void method();//实际上为public abstract void method(); } class Test { static Inter function() { return new Inter() { public void method() { System.out.println("haha"+x); } }; } } class InnerClassTest { public static void main(String args[]) { Test.function().method(); /* 解析上面一行的代码:Test.function():说明类Test中有一个静态方法function()。对于类中的静态方法可以直接用“类名.静态方法名()”来调用。对于非静态方法,需要创建对象来调用。 .method():说明调用了接口中的method方法,然而我们知道只有实现method接口的类对象才能调用method方法。 所以在Test.function()方法必然返回了Inter类型的对象。 */ } }
标签:
原文地址:http://blog.csdn.net/iemdm1110/article/details/51356681