weixin_37408595
嚣张的巡山夫
2017-03-07 05:30

java关于如何访问内部类的问题

  • java
  • class

问题描述:
一、学习了内部类,我自己总结了一些规律,想请教大家是不是正确的(最好有所补充):
1、如果想访问没有static修饰的内部类,先要访问其外部类(内部类在外部类里),再由外部类通过方法(或者别的办法)去访问内部类。
2、而如果内部类在外部类的方法里,要先访问外部类,再通过访问方法来访问内部类。
3、总的来说就是要访问内部类要先访问其外面的类或者方法。
二、首先假设有外部类A包含内部类B(不在方法中)。
当内部类被static修饰后,可以用如下方法访问内部类:
A.B b = new A.B();
如果没有static修饰则要用如下方法:
A a = new A() ;

A.B b = a.new b() ;
第一个方法是如何访问内部类的(我知道是规定的,但我想知道究竟是如何实现的)?难道是用static修饰后,类B变成了类A的一部分(就好像静态方法一样?),所以可以直接实例化内部类B(static修饰的内部类B可以看作外部类)?顺带一问:用static修饰的内部类为什么可以看作外部类?
问题有点多,大家清楚哪个就说哪个。
希望大家不吝赐教。

  • 点赞
  • 回答
  • 收藏
  • 复制链接分享

1条回答

为你推荐

换一换