一、继承:
- 子类继承父类中所有 属性和方法
- 子类只能重写父类中实例方法
- super关键字,如果放到子类构造函数第一行,如果出现子类方法中可通过该关键字调用子类覆写的方法
- 使用final关键字修饰的方法不能重写,类不能被继承
- static关键字修改的方法只属于所在类,不属于类的实例,但是所有实例共享静态成员,static修饰的方法中必须调用静态的方法和使用静态的变量。
在 static中不能使用this和super关键字。
二、多态:就是一个事物多种表现形态
表现形式:
重写(子类中重写父类中的方法)
重载(在同一个类中定义参数类型和参数不同且方法名称相同的方法就是重载,它与返回值无关)
三、抽象:就是一种理论、思想,不能用具体语言描述的事物。
抽象类:使用abstract关键字修饰的类,就是抽象类
语法: public abstract class 抽象类名称{}
总结:
- 抽象类不能被实例化
- 抽象类中可以定义抽象方法
- 抽象方法不能使用private修饰
- 抽象类可以继承抽象类并且可以不实现父类中抽象方法
四、 接口
- 使用interface关键字修饰的类
- 接口时特殊的抽象类,不能有构造函数,不能成员变量
- 接口中所有成员、常量、方法都是public
- 接口中定义声明都是抽象的
- 接口必须让其实现类使用implements关键字实现接口中所有定义抽象声明
- jdk1.8版本及以上能够在接口中定义使用static和default关键定义实现方法
作用: 限定其实现类必须具有的方法
接口定义的变量都是静态的常量 public static final String NAME="zhangsan"
接口定义:
public interface IUserDAO{
<!--jdk1.0版本以上定义 -->
default public void say(){
System.out.printlin("接口中默认实现的方法");
}
}