抽象修饰符abstract
2024-09-07 14:18:21
描述一类事物的时候发现该类存在一种行为,但不知道行为具体怎么实现,我们将这种行为称之为抽象行为,这时候我们就需要抽象类
抽象类的好处:抽象类中的抽象方法一定要备子类重写
抽象类注意点:
1.在类中,一个类如果没有方法体,则必须用abstract修饰符,变成抽象方法
2.如果一个类中有抽象方法,则这个类也必须是抽象类
3.非抽象类继承抽象类时,必须重写父类的抽象方法
4.抽象类不能构造对象,但抽象类有构造方法,给子类创建对象时使用
5.抽象类中可以有抽象方法,也可以有非抽象方法
6.抽象类继承抽象类,可以重写抽象方法,也可以不重写
abstract不可以和final static private关键字一起使用
不可以和final ,private一起使用是因为,抽象类必须被继承,否则将没有意义,抽象方法也必须要重写,因为抽象方法没有具体的方法体
不可以和static使用是因为抽象类中方法没有具体实现,被调用了没有任何意义
java中的普通类和抽象类只支持单继承,一个类只可以有一个直接的父类,但是可以有多个间接的父类
1 public class Demo2 {
2
3 /**
4 * @param args
5 */
6 public static void main(String[] args) {
7 ChinaBank cb = new ChinaBank();
8
9 // Bank b = new Bank();
10
11 }
12
13 }
14
15 abstract class Bank{
16 String name;
17
18 Bank(){
19 System.out.println("抽象方法");
20 }
21
22 public abstract void getMoney();
23
24
25 public void saveMoney(){
26 System.out.println("Bank saveMoney");
27 }
28 }
29
30 class ChinaBank extends Bank{
31
32 String remark;
33
34 public void buyChinaBank(){
35 System.out.println("ChinaBankSelf method。。。。。。");
36 }
37
38 @Override
39 public void getMoney() {
40 // TODO Auto-generated method stub
41
42 }
43
44 }
最新文章
- Flash与JS之间相互调用以及参数传递
- abort终止正在进行中的的ajax请求
- Delphi完成的断点续传例子 转
- Visual Studio 2013 支持MVC3不完善,Razor智能提示不完整或者不提示
- Oracle之主键的创建、添加、删除操作
- (原创)Windows8下安装配置WAMP
- Python 数据类型转换
- Bzoj 1565: [NOI2009]植物大战僵尸 最大权闭合图,拓扑排序
- Highcharts 带有数据标签曲线图表
- java字符串输出
- codeforces 558/C Amr and Chemistry(数论+位运算)
- 一次Redis 的性能测试和问题
- nodeJS中的包
- 【 DCOS 】织云 CMDB 管理引擎技术详解
- WPF中获取系统本身自带的控件模板(XAML)
- I2C总线协议的软件模拟实现方法
- jframe 对象(GroupedAction)传递无法调用对象的方法解决办法
- DocX开源WORD操作组件的学习系列二
- EasyPOI校验实现返回错误信息及行号
- github 搜索