A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 明锦添 中级黑马   /  2013-3-20 10:08  /  1114 人查看  /  4 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

内部类能在本类中建立本类或者其他类的对象吗?

点评

如果问题未解决,请继续追问回复者,如果问题已经解决,请将分类改为“已解决”,谢谢  发表于 2013-3-21 10:44

评分

参与人数 1技术分 +1 收起 理由
贾文泽 + 1

查看全部评分

4 个回复

倒序浏览
不是静态的内部类  可以吧
静态内部类 貌似不可以
回复 使用道具 举报
可以,内部类享受与其他类同等的待遇,内部类可以继承外部类,以及外部接口,当然可以建立本类或者外部类对象
回复 使用道具 举报
这是肯定可以的,内部类和接口配合使用,可以很好的解决JAVA没有的多继承。对于外部类的方法和属性,内部类都是可以直接使用的,只需要用外部类名.this.变量名即可
回复 使用道具 举报
本帖最后由 李阳阳 于 2013-3-20 12:03 编辑

内部类访问规则:
1.内部类可以直接访问外部类成员,包括私有的;
    之所以能访问是因为省略了 “外部类名.this”
2.外部类访问内部类需建立内部类对象
这是我之前的练习,你看下,有的地方我没注释、
class Outer
{
        int x=5;
         void show()
        {
                 int x=8;
                 Inter in = new Inter();//外部类访问内部类需建立内部类对象
                //System.out.println("out"+x);//相当于Outer.this.x
                System.out.println("in"+in.x);
        }
        class Inter
        {
                int x=3;
                void show()
                {
                        //int x=11;
                        System.out.println("inter"+x);
                }
        }
}
class OutClassDemo1
{
        public static void main(String[] args)
        {
                Outer.Inter in = new Outer().new Inter();//外部类访问内部类的格式
                in.show();
                Outer out = new Outer();
                out.show();
        }
}

评分

参与人数 1技术分 +1 收起 理由
贾文泽 + 1

查看全部评分

回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马