1、抽象类中可以定义域(成员变量),普通方法,抽象方法
2、非抽象子类继承抽象父类时,必须要重写抽象父类中的所有抽象方法(普通方法不用)
3、抽象子类可以空继承抽象父类,不一定要重写抽象父类的方法
4、抽象类可以实现(implements)多个接口;接口可以继承多个接口
public abstract class TestA {
int num = 0;//域(成员变量)
public void add(){//普通方法
System.out.println("加法");
}
abstract int get();//抽象方法
}
2、非抽象子类继承抽象父类时,必须要重写抽象父类中的所有抽象方法(普通方法不用)
class TestB extends TestA{
@Override
public int get() {//子类重写的方法,可以修改父类的权限(父默认权限->子public)
return 0;
}
}
3、抽象子类可以空继承抽象父类,不一定要重写抽象父类的方法
abstract class TestC extends TestA{
//抽象子类不用重写抽象父类的方法
}
4、抽象类可以实现(implements)多个接口;接口可以继承多个接口
interface infA{
}
interface infB{
}
interface infC extends infA,infB{//接口继承多个接口
}
abstract class TestD implements infA,infB{//抽象类实现多个接口
}