抽象类
抽象类
概念:
被abstract关键字修饰的类,就是抽象类
被修饰的方法为抽象方法,抽象方法没有方法体
在类上面也需要加上,为抽象类
抽象类的特点
抽象类和抽象方法一定要使用abstract关键字
抽象类中不一定有抽象方法
没有抽象方法的抽象类的存在的意义:
不让外界创建对象
抽象类不能实例化,但是我们可以利用多态的思想类赋值
pet抽象,Dog是pet的子类,dog是普通类
作为抽象类的子类应该怎么办
抽象类中可以包含哪些内容
等...
//普通的成员变量 String name; //final修饰的变量,长量 final String COUNTRY = "中国"; //静态常量 public abstract void say(); //普通方法 public void aa(){ } //静态方法 public static void play(){ } //构造方法,有参,无参 public Pet() { } public Pet(String name) { this.name = name; } { //代码块 } static { //静态代码块 }
抽象类本身不能够被实例化的,所以抽象类就是用一个类给予类服务的类
static和abstract不能共存的
static方便调用,abstract为了给子类重写的,没有方法体
final是互相冲突的,final修饰的方法不能被重写,而abstract修饰的方法就是为了让子类重写的
private:也是冲突的,private修饰的方法不能够被继承,也就不能重写了,而abstract方法就是为了让子类重写的
1.抽象类的所有的抽象方法都是用来给子类重写的
⒉抽象类的所有的非抽象方法也是用来给子类使用的
3.抽象类的构造方法是用来给子类初始化父类继承过来的成员
4.抽象类的成员变量也是用来给子类使用的
5.抽象类就是一个彻头彻尾的服务类