码迷,mamicode.com
首页 > 其他好文 > 详细

静态方法中不能new内部类的实体对象

时间:2016-07-14 17:29:18      阅读:132      评论:0      收藏:0      [点我收藏+]

标签:

原因如下:

1.内部类可以访问外部类的成员变量

2.对象创建完成后对象的成员变量才会被分配空间

3.main的静态方法执行时可以不存在外部类,不创建实体对象

4.内部类能访问成员变量意味着一定存在外部类实体对象

因为3和4矛盾,所以在静态方法中不能new内部类的实体对象

这个是错误的

class demo{    
    public void func(){
        //位置1;
    }
    class Inner{}
    
    public static void main(String[] args){
        demo d=new demo();
        // 位置2
        new Inner();
        
        
    }
}

 

静态方法中不能new内部类的实体对象

标签:

原文地址:http://www.cnblogs.com/jiangzhengbin/p/5671048.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!