首页 > 其他分享 >01_抽象类

01_抽象类

时间:2023-07-15 12:55:28浏览次数:27  
标签:01 构造方法 子类 abstract 抽象 抽象类 方法

一、为什么要用抽象类

  1. 当父类定义一个功能时,每个子类对该功能的具体实现逻辑都不一样,那么父类定义该功能时就可以定义成抽象的方法,这个类就必须是抽象类了
  2. 抽象类也是类,也能定义类中的5大成分(成员变量、成员方法、构造方法、代码块、内部类),特别需要注意的是,有抽象方法的类,必须是抽象类
  3. 子类在继承了抽象类之后,必须重写抽象类中所有的抽象方法
  4. 抽象类不能够被实例化

二、如何定义抽象类

使用abstract关键字修饰的类称为抽象类,格式如下

public abstract class 类名();

三、什么是抽象方法

使用abstract关键字修饰且没有具体实现的方法就是一个抽象方法,格式如下

public abstract 返回值类型 方法名(参数列表);

四、抽象类中的构造方法

抽象类是不能够被实例化的,那为什么还要在抽象类中书写构造方法呢,原因就是抽象类的构造方法就是为了保障子类对象可以实例化成功准备的,子类实例化时,要调用子类的构造方法,子类构造方法中要调用super()

标签:01,构造方法,子类,abstract,抽象,抽象类,方法
From: https://www.cnblogs.com/xulinjun/p/17555978.html

相关文章

  • 【转】Docker入门笔记01:Docker容器技术的发展历程
    原文:https://zhuanlan.zhihu.com/p/304623118最近因为工作需要,要学习一些基本的Docker知识,所以整理了一些docker的入门知识,感兴趣的小白可以看看,一起学习进步。要学习一个新的东西,我的习惯一般是先了解它是什么,它是怎么来的,发展历史是怎样的,用来解决什么问题,有什么优缺点。所以......
  • VS2015 C++代码内存泄漏
    在可能泄漏的文件头部加入下面几行(保证malloc和new的泄漏都可以检测到)#define_CRTDBG_MAP_ALLOC#include<crtdbg.h>#ifdef_DEBUG//重载new运算符#definenewnew(_NORMAL_BLOCK,__FILE__,__LINE__)#endif程序运行起始位置:_CrtSetDbgFlag(_CRTDBG_ALLOC_MEM_DF|_C......
  • WPF - 001 数据绑定
    数据绑定WPF数据绑定四大要素:绑定源、绑定源属性、绑定目标、绑定目标属性。绑定源可以是:CLR对象ADOXMLDependencyObject绑定目标可以是:DependencyObject能够绑定的属性都是依赖属性,即DependencyProperty,所有DependencyProperty的值都是Object->Denpende......
  • MURF20100CT-ASEMI快恢复对管MURF20100CT
    编辑:llMURF20100CT-ASEMI快恢复对管MURF20100CT型号:MURF20100CT品牌:ASEMI封装:TO-220F恢复时间:50ns正向电流:20A反向耐压:1000V芯片个数:2引脚数量:3类型:快恢复二极管、快恢复对管特性:对管、插件快恢复二极管浪涌电流:200A正向压降:1.9V封装尺寸:如图工作温度:-50°C~150°C......
  • 01-设计模式-代理模式
    1、代理模式的分类代理模式分为:静态代理:在编译阶段确定了被代理对象的类型,简单。动态代理:在运行阶段确定了被代理对象的类型,复杂。2、静态代理静态代理涉及的类:一个接口,下面的例子中命名为Subject实现了接口的被代理对象RealSubject实现了接口的代理对象StaticProxy......
  • [NOI2018] 屠龙勇士
    题意求解下列同余方程组,\[\begin{cases}b_1x\equiva_1\pmod{m_1}\\b_2x\equiva_2\pmod{m_2}\\\dots\\b_nx\equiva_n\pmod{m_n}\\\end{cases}\]其中,\(n\leqslant10^5,m_i\leqslant10^8,lcm(m_i)\leqslant10^{12},a_i\leqslant......
  • 【雕爷学编程】Arduino动手做(162)---OPT101模拟光照传感器模块3
    37款传感器与执行器的提法,在网络上广泛流传,其实Arduino能够兼容的传感器模块肯定是不止这37种的。鉴于本人手头积累了一些传感器和执行器模块,依照实践出真知(一定要动手做)的理念,以学习和交流为目的,这里准备逐一动手尝试系列实验,不管成功(程序走通)与否,都会记录下来—小小的进步或是......
  • 【雕爷学编程】Arduino动手做(162)---OPT101模拟光照传感器模块2
    37款传感器与执行器的提法,在网络上广泛流传,其实Arduino能够兼容的传感器模块肯定是不止这37种的。鉴于本人手头积累了一些传感器和执行器模块,依照实践出真知(一定要动手做)的理念,以学习和交流为目的,这里准备逐一动手尝试系列实验,不管成功(程序走通)与否,都会记录下来—小小的进步或是搞......
  • [极客大挑战 2019]EasySQL
    [极客大挑战2019]EasySQL题目来源:buuctf题目类型:web涉及考点:SQL注入先看题目,给了两个输入框:随便输入几个数进去,例如username=123,password=123:页面回显说是错误的用户密码,但注意到url中采用的是get传参:下一步寻找注入点,我们可以假设数据库中的查询语句为:select......
  • 洛谷 P6667 [清华集训2016] 如何优雅地求和
    洛谷传送门点值不好搞。考虑把它搞成系数一类的东西。由二项式反演,\(f(x)=\sum\limits_{i=0}^x\binom{x}{i}b_i\Leftrightarrowb_i=\sum\limits_{j=0}^i\binom{i}{j}(-1)^{i-j}f(j)\)。然后我们要求:\[\sum\limits_{k=0}^n\sum\limits_{i=0}^ms_i\bino......