抽象类:不具体的类
1. 抽象方法,只有行为的概念,没有具体的行为实现。使用:abstract 关键字修饰,并且
没有方法体。
2. 包含抽象方法的类,就一定是抽象类。
3. 抽象方法和抽象类非常适合作为系统的分析和设计的
4. 抽象类不能直接实例,可以定义引用变量。
5. 抽象类只能被继承,一个具体类继承一个抽象类,必须实现所有抽象方法。
接口:
1.接口:全部的方法都是抽象方法,全部的属性都是常量。接口用来表示纯抽象概念,没
有任何具体的方法和属性。
2.不能实例化,可以定义变量
9.实现一个接口,使用关键字 implements,实现实际一种继承关系,接口和实现是父子类型
的关系。
注意:当一个抽象类继承接口是,可以不全部实现接口内的方法。接口之间是可以继承的。
Object 的方法: 是 java 的继承 root 类,所有类都从这个类继承。
1. toString() 返 回 对 象 的 文 本 描 述 , 经 常 被 系 统 默 认 调 用 , 默 认 返 回 : 权 限 定 名
@HashCode;
SUN 建议覆盖 toString(),返回合理的文本。
2. equals 是用来比较两个对象是否相等的方法。
区别:引用相等 与 对象相等
引用对象:使用“==” 对象相等: .equals() 方法
equals 在 Object 类中声明,默认的比较规则是:
常量池:
重载的返回值类型可以不一样,但必须满足类型的继承关系,如:
public Object a(int x, int y);
public String a(int x, int y);
类与类之间是单继承(一对一)的关系(extends),但是类与接口之间是实现(一对多)
的关系(implements)。
接口与接口之间也是一对多的关系(extends)。