java温习*(14):关于抽象类应用总结

    技术2025-04-28  19

    作用:

    在面向对象的概念中,所有的对象都是通过类来描述的,但并不是说所有的类都是用

    来描述对象的。当一个类中没有包含足够的信息以描绘一个具体的对象时,这样的类就是抽象类。

    定义抽象类的意义在于:

    为其子类提供一个公共的类型(父类引用指向子类对象)

    封装子类中的重复内容(成员变量和方法)

    将父类设计成抽象类后,既可借由父子继承关系限制子类的设计随意性,在一定程度上避免了无意义父类的实例化。

    语法:

    特点:

    抽象类不允许直接实例化,换句话说抽象类不能创建对象,它只能作为其他类的父类。 但可以通过向上转型,指向子类实例。(如图1,2)

    (图1)(图2 )

    当类中存在抽象方法,则必须声明为抽象类(如图3,4);但是抽象类中可以没有抽象方法(如上面图1)。

    (图3)(图4)

    3、一个类继承抽象类后,必须实现其所有抽象方法,否则也是抽象类(如上图3,下图5,6);不同的子类对父类的抽象方法可以有不同的实现。

    (图5)

    (图6)

    4、abstract 方法不能用 static 和 private 修饰;对于类,不能同时用 final 和 abstract 修饰。因为 final 关键字使得类不可继承,而 abstract 修饰的类如果不可以继承将没有任何意义。两者放在一起,也会引发编译异常。(如图7,8,9)

    (图7)(图8)​(图9)

    Processed: 0.013, SQL: 9