java学习第四篇——接口interface和内隐类inner class

c++不包含这两个功能

interface
  • interface陈述这样一个事实:所有实现本接口的classes,看起来都应该一样。即派生的classes实现的只有这些函数,导出另外一个事实即interface中所有函数均为public。
    interface A class B implements A
  • interface比abstract class 更加抽象,完全不带半点实现的内容
  • interface可以内涵数据成员,但被默认为static和final
interface和多重继承
  • class A extends B implements C,D,E
inner class
  • inner class 和 组合有区别,可以实现更深层的隐藏实现细目,实现名称隐藏和程序代码组织

  • 建立与外围class(enclosing class)的联系,可以访问外围所以成员无需添加任何修饰词

  • 直接产生inner class 对象
    外围类名.inner_class_name var = new 外围类对象.new inter_class_name;

  • inner_class编译产生的文件为outer_class_name$inner_class_name

  • inner class需求性:每个inner class可以各自继承某一实现类,不受限outer class算法已继承某一实现类,为实现多重继承提供完整的解决方案。

  • inner class 应用于control framework有很大优势

你可能感兴趣的:(java学习第四篇——接口interface和内隐类inner class)