本帖最后由 杨兴庭 于 2013-8-7 18:03 编辑
记得毕老师在讲内部类的时候说,外部类的静态方法在访问内部类时,内部类也必须是静态的,个人感觉写的不是很精确。可以通过先创建对象,再访问,如 new Outer().new Inner(), 或者应该说成,外部类的静态方法在直接访问内部类时,内部类应是静态的。
举例吧- class Test
- {
- class Person
- {
- private int age;
- private String name;
- Person()
- {
-
- }
- Person(int age)
- {
- this.age=age;
- }
- Person(int age, String name)
- {
- this(age);
- this.name=name;
- }
- public String toString()
- {
- return name+"::"+age;
- }
- public void show()
- {
- System.out.println("I'm superMan");
- }
-
- }
- public static void test()
- {
- Test.Person p1=new Test().new Person();
- }
- }
复制代码 静态方法test,通过先创建对象再访问内部类。
|