黑马程序员技术交流社区

标题: 关于外部类调用内部类的小问题,谢谢 [打印本页]

作者: 精彩    时间: 2016-4-25 16:18
标题: 关于外部类调用内部类的小问题,谢谢
class Outer
{
        int num = 3;
        class Inner
        {
                int num = 4;
                void show()
                {
                        int num = 5;
                        System.out.println(num);
                        System.out.println(this.num);
                        System.out.println(Outer.this.num);
                }
        }
        void method()
        {
                new Inner().show();//这里为什么不需要建立对象再调用,为什么可以直接调用,谢谢大神解释一下
        }
}
class InnerClassDemo
{
        public static void main(String[] args)
        {
                new Outer().method();
        }
}

作者: 精彩    时间: 2016-4-25 16:22
麻烦帮忙看下注释那地方为什么能直接调用,不需要建立对象之后再调用吗?已编译过两种都行,就想知道原因,谢谢
作者: 阳光多灿烂    时间: 2016-4-25 17:17
去学习学习匿名对象
作者: 943480861    时间: 2016-4-25 19:24
你已经创建了对象
作者: 精彩    时间: 2016-4-25 20:05
943480861 发表于 2016-4-25 19:24
你已经创建了对象

恩恩,是的,谢谢。我格式弄混了,看成外部其他类了
作者: 精彩    时间: 2016-4-25 20:08
阳光多灿烂 发表于 2016-4-25 17:17
去学习学习匿名对象

好的,谢谢
作者: 小K哥    时间: 2016-4-25 21:19
new Inner()不就创建对象了吗。只不过没写对象名而已。
作者: 精彩    时间: 2016-4-25 22:06
明白 了  谢谢




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