继承:继承父类所有方法及成员变量;extends
覆盖:如果子类重写父类的方法,执行子类的方法
使用super调用父类的
当子类实例化对象时,先父类实例化:在子类中定义构造方法时,要把super构造方法放在最前面
父类引用指向子类实例是可行的
子类数组的引用可以转换成超类数组的引用, 而不需要采用强制类型转换。
final修饰的类不可被继承
final类中所有方法都是final修饰
多态:在 Java 程序设计语言中,对象变量是多态的。 一个 Employee 变量既可以引用一个 Employee 类对象, 也可以引用一个 Employee 类的任何一个子类的对象(例如, Manager、 Executive、Secretary 等)
强制类型转换:
强制类型转换满足父类引用指向子类实例
旁系不可转换
抽象:
提取共性特征
子类必须重写父类的抽象方法
子类如果不是抽象类 则必须重写所有的父类抽象方法
object:
object是所有类的父类
在 Java 中,只有基本类型 ( primitive types) 不是对象, 例如,数值、 字符和布尔类型的 值都不是对象。 所有的数组类塱,不管是对象数组还是基本类型的数组都扩展了 Object 类。
equals:比较值的地址 Object 类中的 equals 方法用于检测一个对象是否等于另外一个对象。(字符串重写equals 比较字符串值是否相等)
hash code 分布相对均匀 大致上均匀 会有小概率冲突
一般情况下 不同对象的hashcode一般不等
hashcode不相等地址一定不等
字符串的散列码是由内容导出
重写equals方法需要重写hashcode:因为hashmap
hashmap:数组加链表结构