抽象类:
当多个类中出现相同功能,但是功能主题不同,这是可以进行向上抽取。这时,只抽取功能定义,而不抽取功能主体。
例如:void study(){},抽取功能定义也即是:void study();此时需要用abstract修饰。
抽象类的特点:
1、抽象方法一定在抽象类中;
2、抽象方法和抽象类都必须被abstract关键字修饰。
3、抽象类不可以用new创建对象,因为都有抽象方法没有意义。
4、抽象类中的方法要被使用,必须由子类复写起所有的抽象方法后,建立子类对象调用。如果子类只覆盖了部分抽象方法,那么该子类还是一个抽象类。
- public class Demo32 {
- public static void main(String[] args) {
-
- }
-
- }
-
- abstract class Student1{
- abstract void study();
- }
-
- class JuniorStudent extends Student1{
- void study(){
- System.out.println("base study");
- }
- }
-
- class SeniorStudent extends Student1{
- void study(){
- System.out.println(" adv study");
- }
- }