java 静态内部类不可以继承非静态内部类理解
最近遇到一个疑惑,为啥静态内部类不可以继承非静态内部类理解呢?一查资料,都是千篇一律,都是对内部类的讲解,都不能直接找到这个疑惑的答案。请教了一些大神,最后明白了其中原委,这里做个记录,哪天又不清楚了可以用来看看。看图:如上图所以,要想new 非静态内部类,必须得有外部类的实例,我们都知道静态类、静态内部类、一切静态的东西都跟非静态无关系,因为虚拟机内存机制里面他们
·
最近遇到一个疑惑,为啥静态内部类不可以继承非静态内部类理解呢?一查资料,都是千篇一律,都是对内部类的讲解,都不能直接找到这个疑惑的答案。请教了一些大神,最后明白了其中原委,这里做个记录,哪天又不清楚了可以用来看看。
看图:
如上图所以,要想new 非静态内部类,必须得有外部类的实例,我们都知道静态类、静态内部类、一切静态的东西都跟非静态无关系,因为虚拟机内存机制里面他们不在一个区域,
那么,直接new 静态内部类是不需要借助外部类的实例的,但是这个静态内部类继承了一个非静态内部类,那么直接new 静态内部类就相当于new 非静态内部类,很显然这么做是不合法的。
所以这样也就能理解这个疑惑了
更多推荐
已为社区贡献37条内容
所有评论(0)