抽象类细节及使用方法

1.abstract修饰的方法叫做抽象方法,拥有抽象方法的类也必须用abstract修饰,叫做抽象类。

2.抽象方法没有方法体。

3.抽象方法不可以被实例化,因为方法没有方法体,没有意义

4.抽象类必须由子类覆盖所有的抽象方法,这个子类才能够被实例化,否则这个子类还是抽象类。

5.抽象类有构造函数,可以用于对子类对象的初始化。

6.抽象类可以不定义抽象方法,但是这种用法很少见,目的是为了不让该类创建对象。AWT的适配器就是这种类。通常这个类中的方法有方法体,但是没有内容。

例如:

abstract class ShowDemo{
    void showA(){

    }
    void showB(){

    }
}

7.abstract不可以与private共存,因为private修饰的方法不能够被子类覆盖,但是抽象方法必须被子类覆盖后才能使用。

8.abstract不可以与static共存,因为static修饰的方法会优先创建,而创建了没有方法体的方法是没有意义的。

9.abstract不可以与final共存,因为final修饰的方法不允许再被覆盖,但是abstract修饰的方法必须由子类覆盖后才能使用。

10.抽象类与一般类的相同点:都是用来描述事物的,都在内部定义了成员

11.抽象类与一般类的不同点

1.一般类有足够的信息描述事物,抽象类描述事物的信息有可能不足。
2.一般类中不能定义抽象方法,只能定义非抽象方法。抽象类中可以定义抽象方法,也可以定义非抽象方法。
3.一般类可以被实例化,抽象类不可以被实例化。

12.抽象类一定是个父类,因为需要子类覆盖其方法后才可以对子类进行实例化。

猜你喜欢

转载自blog.csdn.net/ILYPTING/article/details/70477535
今日推荐