-
java中abstract关键字(抽象类)
需求
- 当父类某个方法,需要声明,但是又不确定如何实现时,可以用抽象方法,那么这个类就是抽象类
- 例如:父类是一个动物类,父类里面有很多方法,其中有一个方法是吃食物,但是不知道吃什么,需要子类继承的时候重写该方法,去设置动物到底吃什么食物
细节
- 当类用abstract关键字声明时,就是一个抽象类
- 当一个类中存在抽象方法时,需要该类声明为abstract类
- 抽象方法不能有方法体。例如:public abstract void eat();
- 抽象类不能被实例化,不能 new 抽象类
- 抽象类不一定要含abstract方法,可以没有抽象方法
- 但是当方法是抽象方法时,类也必须是抽象类
- abstract只能修饰方法和类,不能修饰属性以及其他
- 如果一个类继承抽象类,则必须实现抽象类的所有抽象方法,如果子类也是抽象类,可以不实现父类的所有抽象方法
- 抽象方法不能使用private、 final和static来修饰, 因为这些关键宇都是和重写相违背的。
练习
- abstract final class A{ } 能编译通过吗? 错误,final是不能继承
- abstract public static void test2(); 能编译通过吗? 错误,static和 方法重写无关
- abstract private void test3();能编译通过吗 ? 错误 private 的方法不能重写
出处:https://www.cnblogs.com/ityc/p/15916947.html
栏目列表
最新更新
Java基础-续
java中abstract关键字(抽象类)
四探循环依赖 → 当循环依赖遇上 BeanPo
Hyperledger Fabric 2.x 动态更新智能合约
java Quartz 定时任务管理类
卧槽!!IntelliJ IDEA 居然偷偷改代码。。
【摸鱼神器】基于SSM风格的Java源代码生成
如何在 Xamarin 中快速集成 Android 版认证服
【Python】Windows微信清理工具v.3.0.1
用Python写了一个图像文字识别OCR工具
MongoDB常用命令(2)
MongoDB基本介绍与安装(1)
SQLServer触发器调用JavaWeb接口
SQL Server索引的原理深入解析
SqlServer2016模糊匹配的三种方式及效率问题
SQL中Truncate的用法
sqlserver 多表关联时在where语句中慎用tri
链接服务器读取Mysql---出现消息 7347,级别
SQL Server解惑——为什么你拼接的SQL语句换
MySQL视图了解一下
噢!JavaScript (1):正则表达式replace的一个
前端之JavaScript—BOM和DOM
基于Vue2.x的前端架构,我们是这么做的
大文件切片上传到服务器
前端之jQuery快速入门
Github Pages 速度慢 vercel 部署静态博客
聚类算法在 D2C 布局中的应用
eslint遇到的报错
大前端JS篇之搞懂【WeakSet】
PHP学生校园考勤管理系统,使用MYSQL数据库