抽象类:类和类之间具有共同的特征,将这些具有共同特征的类进一步抽象就可形成抽象类。
如下:行用卡类和储蓄卡类可以再抽象为银行账户类
抽象类需要主要的点
抽象类是无法被实例化的,天生就是用来被子类继承的。所以abstract 和 final是俩个对立的关键字,报错"非法的修饰符组合"。
抽象类虽然无法被实例化,但是抽象类有构造方法,用来供子类使用。
//银行账户类
abstract class Account{
}
//子类继承抽象类,子类可以实例化对象
class CreditAccount extends Account{
}
以下程序会报错:无法将类Account中的构造器Account应用到给定类型Super()
//银行账户类
abstract class Account{
public Account(String s){}
}
//没有写构造方法,系统会提供一个默认的无参构造器
class CreditAccount extends Account{
}
抽象方法: