1. 为什么要使用内部类?
1.1 内部类继承某些类,然后外部类再通过内部类调用相应的功能,间接地使用多个父类的功能,可以弥补单继承的不足。
这边假设一个场景,一个类需要继承网络连接类(自己定义的NetClass类)和线程类(Thread类),网络连接类拥有一个网络连接的方法;同时线程类是为了可以方便地异步执行任务。那么通过内部类的方式,外部类就可以间接地使用这两个类,弥补了单继承的不足,代码和运行结果如下。
1.2 私有权限的内部类仅仅可以被当前外部类访问,内部类的具体实现被隐藏。但是内部类和外部类的私有属性可以互相访问,不受权限影响。