------Java培训、Android培训、iOS培训、.Net培训、期待与您交流! -------
就我所知道的内部类的有关内容,做出如下笔记
1.普通成员内部类
可以随意访问外部内的成员和方法,其他类可以通过先创建外部类对象,然后再获得该内部类的引用
2.静态内部类
可以看到,如果用static 将内部内静态化,那么内部类就只能访问外部类的静态成员变量,具有局限性
其次,因为内部类被静态化,因此Out.In可以当做一个整体看,可以直接new 出内部类的对象(通过类名访问static,生不生成外部类对象都没关系
3.方法内部类
4.私有内部类
如果内部类被私有化后,其他类就不能直接实例化该类了,只能调用他的外部类提供的方法来获得其引用,然后对其进行操作,对于外面的类,他是隐身的,只有通过其对应的外部类,他才能被访问
此刻我也明白了,private修饰后,就像普通的成员变量被private修饰后,不能直接访问,但是可以通过类提供的方法来获得,与成员变量不同的时,内部类被修饰后,外部类是无法通过某一方法的返回值来获得其引用的,只能在外部类提供的方法中操作内部类,这就好比,当医生要给你的心脏做手术时,只能在里肚子里做,不能将心脏拿出来。对于外面的人来说,你的心脏是隐藏的,医生必须破开肚子才能操作。
如果各位有什么补充的,希望你们不吝赐教!