黑马程序员技术交流社区

标题: 内部类 [打印本页]

作者: 信仰年轻    时间: 2015-9-18 22:28
标题: 内部类
package 主要内容;
/**
将一个类定义在另一个类的里面,对里面的那个类就称为内部类(内部类,嵌套类)

内部类的访问规则:
                                1、内部类可以直接访问外部类中的成员,包括私有成员
                                        之所以可以直接访问外部类中的成员,是因为内部类持有了一个外部类的引用,
                                        格式 外部类名.this
                            2、而外部类要访问内部类中的成员必须要建立内部类的对象
*
*/
class Outer
{
        int x=3;
        class Inner//内部类
        {
                int x=4;
                void function()
                {
                        int x=6;
                        System.out.println("inner:"+Outer.this.x);
                }
        }
        void method()//外部类要先建立内部类的对象 才可以访问
        {
                Inner in=new Inner();//内部类的对象
                in.function();
        }
}
public class 内部类访问规则
{
        public static void main(String[] args)
        {               
                //Outer out=new Outer();
                //out.method();
                //直接访问内部类中的成员
                Outer.Inner in=new Outer().new Inner();
                in.function();               
        }
}




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2