二.抽象类
1.概念
被abstract 修饰的类,称为抽象类
-
定义 方式 public abstract class 类名{ }
-
抽象类不能被实例化, 不能用new 创建对象,只能被继承
被absract 修饰方法,称为抽象方法
-
定义 方式: public abstract 返回类型 方法(){ }
-
抽象方法只有声明,没有具体的实现,没有方法体
2.特性
- 子类继承抽象类后,必须实现 抽象类中的抽象方法。
- 抽象类中可以有抽象方法,也可以没有抽象方法
- 含有抽象方法的类,必须为抽象类
package javaSE09_抽象类和接口;
public class Test02_抽象类 {
public static void main(String[] args) {
// pet 是个抽象类,不能实例化
// Pet p = new Pet();
Cat c = new Cat();
c.show();
}
}
//定义了一个抽象类
abstract class Pet{
private String name;
//抽象方法,没有方法体,只是定义了一个规则
// 考大学
public abstract void show();
// 当一个类中只要存在抽象方法,该类就必须定位抽象类
public abstract void paly();
// 抽象类中可以有普通方法 和 抽象 方法
public void t1(){
System.out.println("是一个普通方法");
}
}
class Cat extends Pet{
@Override
public void show() {
System.out.println("通过高考正常 统招");
}
// 子类继承父类后必须 实现 父类中的抽象方法
@Override
public void paly() {
System.out.println("猫在走猫步");
}
}
class Pig extends Pet{
@Override
public void show() {
System.out.println("成人自考");
}
@Override
public void paly() {
System.out.println("猪在上树");
}
}