本帖最后由 saistart 于 2012-12-5 21:04 编辑
- /*
- 需求:创建一个内部类,来调用外部类的属性和方法
- 分析:
- 1,我们在外部类中创建一个内部类,此内部类中去调用外部的
- 属性和方法
- 2,这里有几个注意事项:不能再静态方法中去创建非静态的内部类对象
- 3,这时我们如果在外部想用内部类对象时,只能在实例方法中创建内部类对象
- 然后再在main方法中调用自己的实例方法
- */
- //创建一个外部类
- class Outer
- {
- //定义两个私有的属性,来验证内部类可以直接调用外部类私有的属性
- private int a=1;
- private int b=2;
- public static void main(String []args)
- {
- Outer ou=new Outer();
- System.out.println(ou.fun1());
- }
- //定义一个外部类的实例方法,在此方法中来创建内部类对象(注意:此时尽管内部类为private的,我们也可以创建对象)
- public int fun1()
- {
- Inner in=new Inner();
- return in.fun2();
- }
- public int fun3()
- {
- return a+b;
- }
- //声明一个私有的内部类,然后去调用外部类私有的属性
- private class Inner
- {
- int fun2()
- {
- // 去调用外部类私有的属性
- return a*b;
- [b]fun3();{:soso_e127:}
- }
-
- }
- }
复制代码 |