JAVA抽象类的详解及应用

来源:互联网 发布:nginx lua 修改header 编辑:程序博客网 时间:2024/05/16 06:16

1.引出抽象类

1)子类必须覆盖父类的抽象方法

2)该抽象方法中没有方法体

2.抽象方法

用abstract修饰的没有方法体的方法,存在于抽象类和接口中,只有被继承,覆盖才有意义。

*1.没有方法体,留给子类去实现(子类必须覆盖抽象方法)

*2.不能用private(子类不能继承,不能使用),static(static是属于类级别的,不能实现方法的覆盖(对象级别的)),final(不能有子类)修饰。

*3.存在于抽象类和接口中

抽象类中可以有抽象方法和普通方法,但是接口中必须全部是抽象方法。

3.抽象类

*1.使用abstract修饰的类,不能够创建对象(即使创建对象,没有方法体,所以没有意义)。

*2.抽象类可以包含普通方法,供子类调用

*3.子类中若没有覆盖父类抽象方法,子类也要作为抽象类

*4.必须有子类

*5.抽象类中可以没有抽象方法,没有太大的意义,但可以防止外界来创建对象。

4.抽象模式的应用

抽离前






5.模板方法设计模式


谢谢阅读!