抽象类基础知识

简介: 抽象类基础知识

1.抽象类没有方法体

1. 抽象类,抽象方法是什么样的?

都是用abstract修饰的;抽象方法只有方法签名,不能写方法体

//抽象类
public   abstract class A {
    public abstract void run();//只有方法签名,没有方法体
}


2.抽象类有哪些注意事项和特点?

抽象类中可以不写抽象方法,但有抽象方法的类一定是抽象类


类有的成员(成员变量,方法,构造器) 抽象类都具备


抽象类不能创建对象,仅作为一种特殊的父类,让子类继承并实现, 一个类继承抽象类,必须重写完抽象类的全部抽象方法,否则这个类也必须定义成抽象类


3.抽象类的应用场景和好处什么?

父类知道每个子类都要做某个行为,但每个子类要做的情况不一样,父类就定义成抽象方法, 交给子类去重写实现,我们做出这样的抽象类,就是为了更好的支持多态


4.抽象类的常见应用场景:设计模板方法设计模式

1.模板方法设计模式解决了什么问题?

      解决方法中存在重复代码的问题


2.模板方法设计模式怎么写?

定义一个抽象类,在里面定义两个方法,一个是模板方法:放相同的代码;一个是抽象方法:具体实现交给子类,由子类完成子类的特定需求


3.模板方法建议用什么关键字修饰?为什么?

建议用final关键字修饰,final修饰的方法不可再被更改


目录
相关文章
|
5月前
|
Java
抽象类的基本知识
抽象类的基本认识,抽象类
|
6月前
|
存储 编译器 C++
C++基础知识(六:继承)
多态是面向对象编程的四大基本原则之一,它让程序能够以统一的接口处理不同的对象类型,从而实现了接口与实现分离,提高了代码的灵活性和复用性。多态主要体现在两个层面:静态多态(编译时多态,如函数重载)和动态多态(运行时多态,主要通过虚函数实现)。
|
6月前
|
存储 编译器 C++
C++基础知识(七:多态)
多态是面向对象编程的四大基本原则之一,它让程序能够以统一的接口处理不同的对象类型,从而实现了接口与实现分离,提高了代码的灵活性和复用性。多态主要体现在两个层面:静态多态(编译时多态,如函数重载)和动态多态(运行时多态,主要通过虚函数实现)。
|
7月前
|
设计模式 Java
JavaSE 面向对象程序设计进阶 抽象类和接口 2024年详解
JavaSE 面向对象程序设计进阶 抽象类和接口 2024年详解
45 0
|
7月前
|
Java
继承基础知识
继承基础知识
23 0
|
8月前
|
Java
Java面向对象程序设计5接口与抽象类
Java面向对象程序设计5接口与抽象类
70 0
|
8月前
|
Java
Java面向对象编程,解释封装、继承和多态的概念。
Java面向对象编程,解释封装、继承和多态的概念。
83 2
抽象类的基本概念
抽象类的基本概念
78 0
|
程序员 编译器 C++
黑马程序员C++类和对象【6】—— 继承(一文万字带你搞懂C++继承 —— 你还不知道怎么学C++继承吗?不知道虚继承底层原理吗?)(1)
黑马程序员C++类和对象【6】—— 继承(一文万字带你搞懂C++继承 —— 你还不知道怎么学C++继承吗?不知道虚继承底层原理吗?)(1)
212 0
黑马程序员C++类和对象【6】—— 继承(一文万字带你搞懂C++继承 —— 你还不知道怎么学C++继承吗?不知道虚继承底层原理吗?)(1)
|
程序员 C++
黑马程序员C++类和对象【6】—— 继承(一文万字带你搞懂C++继承 —— 你还不知道怎么学C++继承吗?不知道虚继承底层原理吗?)(2)
黑马程序员C++类和对象【6】—— 继承(一文万字带你搞懂C++继承 —— 你还不知道怎么学C++继承吗?不知道虚继承底层原理吗?)(2)
118 0
黑马程序员C++类和对象【6】—— 继承(一文万字带你搞懂C++继承 —— 你还不知道怎么学C++继承吗?不知道虚继承底层原理吗?)(2)