抽象类:包含一个抽象方法的类成为抽象类。
抽象方法:只声明而未实现的方法,所有的抽象方法和抽象类使用abstract关键字声明。
抽象类不能直接进行实例化操作,但是可以声明,如果要想使用抽象类则必须依靠子类,抽象类是必须被子类继承的,而且 被继承的子类需要实现抽象类中的全部抽象方法。
思考:1.抽象类能否使用final声明呢?
- 抽象类必须被子类继承
- 被final声明的类不能有子类
所以抽象类不能使用final声明。
2.抽象类能不能存在构造方法?
抽象类允许有构造方法,但此构造方法不能直接调用,交给子类去调用,子类对象实例化的过程中,永远是先调用父类中的构造方法。
实际上来讲抽象类就是比普通类多了一个抽象方法。
抽象类中的属性想要初始化,肯定依赖于构造方法。