抽象方法和抽象类

2023-11-05

目录

一 .抽象方法和抽象类

1、 区分普通方法和抽象方法

2、 区分普通类和抽象类

3、 定义一个抽象类

4、 使用抽象类描述抽象的事物

5、抽象类和抽象方法的优势

6、 抽象类的局限性

一 .抽象方法和抽象类

 

1、 区分普通方法和抽象方法

(1)在Java中,当一个类的方法被abstract关键字修饰时,该方法称为抽象方法。

(2)抽象方法所在的类必须定义为抽象类。

(3)当一个方法被定义为抽象方法后,意味着该方法不会有具体的实现(没有方法体),而是在

抽象类的子类中通过方法重写进行实现。

(4)定义抽象方法的语法格式如下:

[访问修饰符] abstract <返回类型> <方法名>([参数列表]);

public abstract void openDoor();

-->抽象方法需要使用abstract修饰,普通方法不需要。

-->抽象方法没有方法体,普通方法没有。

-->抽象方法所在的类必须被定义为抽象类。

-->抽象方法在子类中必须被实现(子类要重写父类中的抽象方法),如果子类不实现,则子类要

定位为抽象类。5

-->private关键字不能用来修饰抽象方法。

-->abstract修饰符不能和final修饰符一起使用。

2、 区分普通类和抽象类

(1)在Java中,当一个类被abstract关键字修饰时,该类称为抽象类。

(2)定义抽象类的语法格式如下:
 

abstract class <类名>{

//代码

}

-->抽象类需要用修饰符abstract修饰,普通类不需要。

-->普通类可以实例化,抽象类不能被实例化。

-->抽象类中可以有抽象方法也可以没有抽象方法,可以有普通方法也可以没有普通方法。

-->抽象类中可以包含普通类包含的一切成员。

3、 定义一个抽象类

当一个类被定义为抽象类时,它可以包含各种类型的成员,包括属性、方法等。其中方法又可以分

为普通方法和抽象方法。
 

public abstract class 类名称{

修饰符 abstract 返回类型 方法名();

修饰符 返回类型 方法名(){

//方法体

}

}

4、 使用抽象类描述抽象的事物

当一个类实例化没有意义时,可以将该类定义为抽象类

5、抽象类和抽象方法的优势

(1)抽象类中已经实现的方法可以被子类使用,使代码可以被复用。

(2)抽象类中的抽象方法,子类需要进行重写,保证了子类具有自身的独特性。

6、 抽象类的局限性

(1)抽象类有时候会出现代码冗余的问题。

(2)类的继承是单根继承,一个类只能直接继承一个类。

public abstract class Door { }

这里是Java基础项目:http://本文链接:https://blog.csdn.net/m0_67979925/article/details/126948962

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

抽象方法和抽象类 的相关文章

随机推荐

  • Redis 分布式锁实现

    Redis 分布式锁 分布式锁 满足分布式系统或集群模式下多进程可见并且互斥的锁 特点 多线程可见 互斥 高可用 高性能 高并发 安全性 可重入性 重试机制 锁超时自动续期等 加锁之后 对整个分布式集群都有效 基于数据库 redis缓存 使
  • JAVA与C++通信之字节序

    1 BIG ENDIAN LITTLE ENDIAN跟多字节类型的数据有关的比如int short long型 而对单字节数据byte却没有影响 BIG ENDIAN就是低位字节排放在内存的低端 高位字节排放在内存的高端 而LITTLE E
  • 如何设置vscode默认谷歌浏览器打开

    突然发现自己写完的网页都是电脑默认浏览器打开 而看到一些视频博主都是默认谷歌浏览器打开 然后就找到了设置的办法 记录一下 设置的步骤 1 在extensions 扩展商店 中安装open in browser 插件 2 左下角中找到sett
  • 数据库服务器的监听系统在哪,数据库监控,数据库监控工具--运维监控系统PIGOSS BSM...

    数据就是一切 各类数据在企业生产经营中都起着至关重要的作用 是所有的经营活动所依赖的 不可或缺的信息 数据就犹如企业经营者的眼睛一样 通过数据可以反映出所有的问题 就犹如舵手依赖导航一样 现在每个企业和组织发展都需要依赖大量的数据 数据也成
  • java new list 对象_Java中List集合对象去重及按属性去重的8种方法

    最近在写一些关于java基础的文章 但是我又不想按照教科书的方式去写知识点的文章 因为意义不大 基础知识太多了 如何将这些知识归纳总结 总结出优缺点或者是使用场景才是对知识的升华 所以我更想把java相关的基础知识进行穿针引线 进行整体上的
  • 微信小游戏的电量监听

    在说小游戏的电量监听事件之前 我想先提一下小程序的电量监听事件 在微信小程序中 是没有电量监听事件的 因为小程序没有全屏 手机端的电量和wifi等信息一直可以看得到 所以小程序里就没有这样的api了 说回小游戏的电量监听 在微信小游戏的ap
  • Gitlab的API调用

    1 概述 Gitlab作为一个开源 强大的分布式版本控制系统 已经成为互联网公司 软件开发公司的主流版本管理工具 使用过Gitlab的都知道 想要提交一段代码 可以通过git push提交到远程仓库 也可以直接在Gitlab平台上修改提交
  • DeFi泡沫、NFT以及市场调整

    DeFi有泡沫吗 有 但谁又没有呢 如果有泡沫 DeFi的泡沫肯定不是最大的那个 截止到蓝狐笔记写稿时 按照Coingecko的统计 DeFi市值大约是135亿美元 XRP市值大约104亿美元 整个加密市场的总市值为3 418亿美元 跟整体
  • 【从0开始学架构笔记】01 基础架构

    文章目录 一 架构的定义 1 系统与子系统 2 模块与组件 3 框架与架构 4 重新定义架构 二 架构设计的目的 三 复杂度来源 高性能 1 单机复杂度 2 集群复杂度 2 1 任务分配 2 2 任务分解 微服务 四 复杂度来源 高可用 1
  • 计算机组成原理复习总结

    计算机组成原理复习总结 一 缩写词解释 CPU 中央处理器 ALU 算术逻辑单元 I O 输入输出接口 RAM 随机存储器 SRAM 静态随机访问存储器 DRAM 动态随机访问存储器 ROM 只读存储器 PROM 用户可编程的只读存储器 E
  • Verilog中模块的实例化

    首先创建一个模块为test 目录为这样 在模块test中写入 module test a b c input a b output c wire d e assign c a b and a1 d a b or a2 e a b rt pi
  • cpu风扇自动调速_电脑主板上CPU_FAN、SYS_FAN、CHA_FAN、CPU_OPT接口知识科普

    我们在电脑组装的过程中 安装过程虽然简单 不过往往都是在接线上遇到问题 经常有装机用户误将CPU散热器的供电线插到了SYS FAN上 虽然风扇可以转动 不过在开机可能会有F1报错 CPU Fan Error 同时也导致了CPU散热器无法智能
  • 为什么我们推荐使用VPC

    最近我在跟一些客户沟通的过程中发现有人对使用VPC Virtual Private Cloud 的优势还不是特别清楚 部分人认为只有那些需要把自己的数据中心与AWS进行连接的企业才需要使用VPC 实际上 我们的确可以通过VPC及其他相关的A
  • 多线程的安全问题一:同步方法与同步代码块

    一 引出线程安全问题 多个线程操作共享数据时 如果线程不完整 则很可能出现线程安全问题 线程执行不确定导致结果不确定 这里有一个三窗口买票程序 共100张票 public class Main2 public static void mai
  • springboot反射自动注入bean

    一 Java通过反射获取对象 执行方法 import java lang reflect Method public class Main public static void main String args throws Excepti
  • 树莓派3B开热点并自动启动

    lz最近项目需要 研究了一下树莓派开热点 试了一下几种方法 发现这一种是最简单 也是比较稳定的一种 现介绍如下 用putty或者vnc对树莓派进行操作 如下图示 putty登录界面 VNC登录界面 创建WiFi热点使用的GitHub上一个开
  • 谷歌云:全面推出 AlloyDB for PostgreSQL 与数据库迁移服务

    本文由Cloud Ace 整理发布 Cloud Ace 是谷歌云全球战略合作伙伴 拥有 300 多名工程师 也是谷歌最高级别合作伙伴 多次获得 Google Cloud 合作伙伴奖 作为谷歌托管服务商 我们提供谷歌云 谷歌地图 谷歌办公套件
  • js数组对象 模糊查找 指定 匹配字段内容

    以下内容仅供参考
  • 时序预测

    时序预测 MATLAB实现NGO BiLSTM北方苍鹰算法优化双向长短期记忆网络时间序列预测 目录 时序预测 MATLAB实现NGO BiLSTM北方苍鹰算法优化双向长短期记忆网络时间序列预测 预测效果 基本介绍 程序设计 参考资料 预测效
  • 抽象方法和抽象类

    目录 一 抽象方法和抽象类 1 区分普通方法和抽象方法 2 区分普通类和抽象类 3 定义一个抽象类 4 使用抽象类描述抽象的事物 5 抽象类和抽象方法的优势 6 抽象类的局限性 一 抽象方法和抽象类 1 区分普通方法和抽象方法 1 在Jav