## 抽象类 抽象方法
### 关键字:abstract
在一个父类中,封装子类都共同有的方法,但是方法体内容内容对我们没有多大意义,因为子类都会去重写父类中的方法,此时不写方法体,能够简化我们的代码,这里不写方法体的方法称为抽象方法,有抽象方法的类我们称为抽象类。抽象类和抽象方法用关键字abstract来表示
### 抽象类的特点:
1. 抽象类不能实例化 (new)
2. 抽象方法没有方法体({})
权限修饰符 abstract 返回值类型 方法名 ( );
```
public abstract void eat();
```
3. 有抽象方法的类,一定是抽象类
4. 抽象类中可以没有抽象方法
5. 子类继承抽象类,如果有抽象方法一定要实现抽象方法,如果子类也是
一个抽象类,可以不重写父类的抽象方法
>[success] 思考:抽象类可以有构造函数吗?
可以有
### abstract 和哪些关键字不能共存?
1. final:final 修饰的方法不能被重写(abstract 需要重写)
2. static:static 修饰的方法可以直接通过类名方法,而抽象方法没有方法体,调用无任何意义(abstract )
3. private:private 修饰的变量只能被自己访问,但是抽象类不能创建对象
- JAVA笔记
- 01、Java扫盲
- 1、JVM、JRE和JDK的区别
- 2、环境变量path和classpath的作用是什么?
- 3、变量有什么用?为什么要定义变量?什么时候用?
- 4、&和&&的区别?
- 5、标示符命名规则
- 6、数据类型
- 7、类型转换
- 8、java语言的三种技术架构
- 9、java的跨平台性
- 10、有符号数据的表示法(次重点)
- 11、按位运算符
- 12、函数
- 13、重载
- 14、数组
- 15、内存结构
- 一、数据结构
- 随机数
- 流程控制语句
- if 和 if...else
- switch
- for
- 函数
- 重载
- 数组
- 数组的复制
- 冒泡排序法算法
- 方法
- 方法的重载
- 方法的练习
- 面向对象
- 面向对象的特点
- 如何创建类
- 如何创建对象
- 一、引用数据类型具有的默认值
- 二、成员变量和局部变量
- 三、构造函数
- 四、气球理论
- 五、继承(extends)
- 权限修饰符
- 封装
- 内存的分配
- 多态
- super关键字
- static关键字
- final关键字
- 抽象类 抽象方法(abstract)
- 接口(interface)
- 单例模式(singleton)
- Object类
- 内部类
- 匿名内部类
- 阶段项目
- 捕鱼达人
- 飞机大战
- 护盾功能
- 血条
- 爆炸
- API
- String 类相关的方法
- 第三方(Apache)jar包的使用
- 正则表达式
- StringBuffer 和StringBuilder 和Date
- 核心API:集合类
- List 集合
- 遍历集合的方式
- 包装类
- Map 集合
- 异常