读《Java编程思想》-- 从c++转向java的java细节 (10)内部类

来源:互联网 发布:淘宝店铺欢迎语幽默 编辑:程序博客网 时间:2024/05/29 07:43
  1. 内部类与外部类紧密联系,拥有对外部类的访问权。必须使用外部类的对象来创建内部类
  2. 使用Outer.this和Outer.new
  3. 为什么使用内部类
    • 解决多重继承的问题。如果多重继承抽象类或者具体类,内部类是多重继承唯一选择
    • 内部类可以有多个实例,每个实例都有自己的状态信息
    • 可以让多个内部类以不同的方式实现同一个接口或继承同一个类
    • 内部类没有迷惑的“is-a"关系,它是一个独立的实体

  4. ??闭包与回调
  5. 内部类与控制框架
    • 控制框架的完整实现由单个类创建,从而使得实现的细节被封装起来。内部类用来表达解决问题所必须的各种不同的action()
    • 内部类能够很容易的访问外部类的任意成员,所以可以避免这种实现变得笨拙。(例子中重启时间,如果不是用内部类来实现,那么使用向外部类的方法将会很笨拙
  6. 内部类的继承神马的,太恶心,就不看了

原创粉丝点击