首页 > 编程语言 >java学习-抽象类

java学习-抽象类

时间:2024-04-28 22:12:42浏览次数:29  
标签:java 定义 子类 学习 关键字 抽象 抽象类 方法

01.定义抽象类

定义抽象类的时候需要用到关键字 abstract,放在 class 关键字前,就像下面这样。
abstract class AbstractPlayer { }

02.抽象类的特征

抽象类是不能实例化的,尝试通过 new 关键字实例化的话,编译器会报错,提示“类是抽象的,不能实例化”。
但是,子类可以通过 extends 关键字来继承抽象类。

如果一个类定义了一个或多个抽象方法,那么这个类必须是抽象类。
抽象类可以定义普通方法和抽象方法,但是普通类只能定义普通方法,不能定义抽象方法。

抽象类派生的子类必须实现父类中定义的抽象方法。比如说,抽象类 AbstractPlayer 中定义了 abstract play() 方法,子类 BasketballPlayer 中就必须实现。

总结:

  • 抽象类不能被实例化。
  • 抽象类应该至少有一个抽象方法,否则它没有任何意义。
  • 抽象类中的抽象方法没有方法体。
  • 抽象类的子类必须给出父类中的抽象方法的具体实现,除非该子类也是抽象类。

标签:java,定义,子类,学习,关键字,抽象,抽象类,方法
From: https://www.cnblogs.com/itbaby/p/18164603

相关文章

  • 机器学习理论问答题刷题宝典2023
    机器学习理论问答题刷题宝典机器学习理论问答题刷题宝典20231.请简要介绍下SVM。SVM,全称是supportvectormachine,中文名叫支持向量机。SVM是一个面向数据的分类算法,它的目标是为确定一个分类超平面,从而将不同的数据分隔开。扩展:支持向量机学习方法包括构建由简至繁的模......
  • 接口测试学习111
    1、同步接口:2、异步接口:不需要等接口的调用结果也可以继续执行。轮询方式。3、回调接口:一、代理类型1、协议:http、https。代理fiddler2、协议:TCP协议簇,代理:socks43、协议:TCP、UDP协议簇,代理:socks5二、接口测试范围/类型1、接口功能测2、接口性能和安全测试3、接口兼容性......
  • Java流程控制
    输入流ScannerScannerscanner=newScanner(System.in);通常会用hasNext()或者hasNextLine()来判断还有没有输入字符,用next(),nextLine()来接收用户的输入next():一定要读取到有效字符后才能结束输入;对有效字符钱的空白会自动去掉,有效字符后的空白作为分隔符或者结束符,不能......
  • 8086 汇编学习 Part 4
    寻址方式形式名称特点意义示例[idata]直接寻址用一个常量/立即数来表示地址用于直接定位一个内存单元MOVAX,[200][BX]寄存器间接寻址用一个变量来表示内存地址用于间接定位一个内存单元MOVAX,[BX][BX+idata]寄存器相对寻址用一个变量和常量......
  • httprunner 4.x学习 - 12 测试用例引用另一个测试用例
    前言把登录用例变 export导出变量,变成全局变量,这样其它用例可以引用登录用例config:name:登录variables:username:"admin1"password:"123456"teststeps:-name:postrequest:method:POSTurl:${ENV(base_url)}/loginjson:......
  • Java的基础知识
    一.Java入门Java的特性和优势:简单性,面向对象,可移植性,高性能,分布式,动态性,多线程,安全性,健壮性;Java三大版本:JavaSE:标准版(桌面程序,控制台开发)JavaME:嵌入式开发(手机,小家电)JavaEE:企业级开发(web端,服务器开发)JDK,JRE,JVM三者之间的关系:JDK(JavaDevelopmentKit):Java开发......
  • 一周-每天1 小时,学习实现一个简单的mini-React (三)G
    关于从0到1实现一个mini-React过程上周写了相对代码实现第一部分,本片文章接着写!崔学社mini-React完整代码whoelse666/mini-React过程-------------day05----------当日目标:实现React.useState对照React的API//一个count++的例子const[count,setCount]......
  • 机器学习笔试面试真题目
       【机器学习】——习题8:KNN原创 码龄1年 关注一.单选题1.下列选择中,关于KNN算法不正确的是?DA.能找出与待测样本相近的k个样本B.距离度量是影响KNN算法的主要因素之⼀C.实现过程相对简单,但是可解释性不强D.KNN的样本搜索中线性扫描效率很⾼2.影响KNN......
  • LLM学习(6)—— LLM 应用
    以下项目参考自Datawhale不过只有其中一点点功能@Datawhale个人知识库助手项目相对于LLM学习(4),首先更改了embedding的方式,由Gemini换成了zhipu,Gemini的人工zz嵌入模型实在太离谱了,把none选项改成了包含历史对话而不仅仅是一问一答,增加了对于pdf和md文件的的导入然后转换为检......
  • Java优雅关闭线程池
    一、背景:线程池中有任务正在执行,此时需要关闭或重启应用,池中的任务如何处理,需要考虑任务的损失、关闭速度两个方面考虑。推荐使用Spring提供的线程池:ThreadPoolTaskExecutor,让Spring帮我们管理线程池的生命周期,初始化、监控、扩展、关闭。特别在应用关闭、重启时能实现优雅关闭......