JAVA核心技术总结(五六章)继承&接口与内部类

第五章 继承

  1. 在Java中,所有的继承都是公有继承,没有C++的私有继承和保护继承
  2. Java同C++一样,子类不能直接访问基类的私有成员,必须通过公有接口访问
  3. C++和Java构造器中构造基类的不同,Java写在函数内,C++写在函数外
    Java使用super调用基类构造器:
public Manager(String n, double s, int year, int month, int day)
{
    super(n, s, year, month, day);   //必须放在子类构造器的第一条语句
    bonus = 0
}

C++使用初始化列表调用基类构造函数:

Manager::Manager(String n, double s, int year, int month, int day):Employee(n,s,year,month,day)
{
    bonus = 0;
}
  1. 判断类类型
    可用instanceof运算符(注意子类 instanceof 基类 结果也为真)
    也可用Object.getClass()
  2. 抽象方法的声明
public abstract String getDescription();

拥有抽象方法的类必须被声明为抽象类

  1. 所有类的超类Object中equals()方法详解:
    在子类没有覆盖equals时,equals的作用等同于==,即比较两个引用是否指向同一对象(同一地址)
    equals的真正作用是可以被子类重写,比较两对象的内容是否相等
  2. Object中继承toString(),该方法是对该类的字符串描述,需要在子类中覆盖,程序员手工填写,在以下两种情况下自动调用toString()
  • System.out.println( x )中自动调用x.toString()
  • 将x与String str相加时:也就是说所有x.toString()都可以用""+x替代
  1. 若想在子类中写一个覆盖基类的方法,则可在方法前加上@override,这样若没有覆盖成功则报错

第六章 接口与内部类

  1. 接口中所有的方法都自动属于public
  2. 一个类实现多个接口时,使用逗号连接接口,如
class Employee implements Cloneable, Comparable
  1. 标记接口如Cloneable没有任何方法和属性(因为clone函数是从Object中继承的),只是表明该类拥有某些功能,并且可以用if(Obj instanceof Cloneable)做判断
  2. java可以返回局部对象的引用,因为只要有引用指向某个对象,该对象就不会被gc销毁
  3. 接口也可以继承(扩展)接口
public interface facename1 extends facename2
  1. 内部类既可以访问自身的数据域也可以访问创建他的外围类对象的数据;可以显示的写为(outer.data)
  2. 定义在类的函数中的内部类称为 局部类 ,局部类不能为publicprivate
  3. 局部类可以访问外围变量,但外部不可以访问局部类
  4. 匿名内部类应用场景:创建一个只使用一次的类;
    声明后紧跟着内部实现就是匿名内部类,如:
Person count = new Person("Dracula"){......}
  1. 静态内部类的对象不可访问外围类对象,与其他所有内部类完全一样。
  2. ArrayList的用法,当声明ArrayList<Integer>时只能存放Integer等引用类型, 而不可声明为intfloat等基本数据类型,只能存放对象
    当不指定数据类型时,其内部可以存放不同数据类型
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 1. Java基础部分 基础部分的顺序:基本语法,类相关的语法,内部类的语法,继承相关的语法,异常的语法,线程的语...
    子非鱼_t_阅读 31,767评论 18 399
  • 1.import static是Java 5增加的功能,就是将Import类中的静态方法,可以作为本类的静态方法来...
    XLsn0w阅读 1,267评论 0 2
  • 面向对象主要针对面向过程。 面向过程的基本单元是函数。 什么是对象:EVERYTHING IS OBJECT(万物...
    sinpi阅读 1,091评论 0 4
  • 事情是这样的,因为今天是周六,所以照理应该写一篇文章庆祝下,以表示对周六的无限热爱。 当然,对周六的热爱可以有很多...
    大白的轶事阅读 298评论 0 0
  • 在中华大地这个历史舞台上,上下五千年,来去匆匆,走过了多少风云人物,秦始皇在这个历史舞台上留下了厚重的脚印...
    忍数阅读 397评论 1 0