#课程回顾
##面向对象
抽象
将现实中的事物抽取出事物的属性和方法,封装成对象,通过对象的实例化和调用,完成需求。
Student stu = new Student();
封装
隐藏类的内部细节,提供外部访问的接口。
将多次重复运行的代码,封装到方法中,减少代码的冗余,提高代码的重用性。
private int a = 10;
public int getA(){}
public void setA(int a){}
继承
子类继承父类的公有属性和方法。关键字是extends
充分体现了java对象重用的特性,继承属性,重写方法,提高了代码的重用性。
class a extends b
多态
一种类型,多种形态。父类对象再编译器是父类形态,运行时是子类形态。提高了java的可拔插性。
Pet pet //父类类型
pet = new Penguin(“qq”,2,85,50,“雌”);
pet = new Dog(“大黄”,3,75,85,“黄色”);
##抽象
什么是抽象类?
abstract 修饰的类叫做抽象类
什么是抽象方法?
使用abstract修饰的方法叫做抽象方法,抽象方法不能有具体的实现,子类必须重写。
特征
abstract 修饰的类是抽象类
1.抽象类不能实例化
2.抽象类中有抽象方法,子类必须重写
3.抽象类中可以有非抽象方法,不要求子类强制实现
4.如果一个类中,有抽象方法,那么这个类一定是抽象类
5.如果一个类是抽象类,这个 类中一定有抽象方法吗?不一定
抽象方法
public abstract void eat();
非抽象方法
public void show(){
}
#接口
什么是接口?
接口不说类,interface修饰 一种数据类型
##特征
接口中,可以有常量。使用static final修饰的。默认被修饰
接口中,可以有方法,使用abstract修饰的,默认被修饰
接口中,没有构造方法
接口,不能被实例化
一个类,如果实现两个接口,接口用逗号分离,必须实现两个接口中所有的方法