描述一类事物的时候发现该类存在一种行为,但不知道行为具体怎么实现,我们将这种行为称之为抽象行为,这时候我们就需要抽象类

抽象类的好处:抽象类中的抽象方法一定要备子类重写

抽象类注意点:

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 }

最新文章

  1. Flash与JS之间相互调用以及参数传递
  2. abort终止正在进行中的的ajax请求
  3. Delphi完成的断点续传例子 转
  4. Visual Studio 2013 支持MVC3不完善,Razor智能提示不完整或者不提示
  5. Oracle之主键的创建、添加、删除操作
  6. (原创)Windows8下安装配置WAMP
  7. Python 数据类型转换
  8. Bzoj 1565: [NOI2009]植物大战僵尸 最大权闭合图,拓扑排序
  9. Highcharts 带有数据标签曲线图表
  10. java字符串输出
  11. codeforces 558/C Amr and Chemistry(数论+位运算)
  12. 一次Redis 的性能测试和问题
  13. nodeJS中的包
  14. 【 DCOS 】织云 CMDB 管理引擎技术详解
  15. WPF中获取系统本身自带的控件模板(XAML)
  16. I2C总线协议的软件模拟实现方法
  17. jframe 对象(GroupedAction)传递无法调用对象的方法解决办法
  18. DocX开源WORD操作组件的学习系列二
  19. EasyPOI校验实现返回错误信息及行号
  20. github 搜索

热门文章

  1. 【Linux】Linux没有网络,可能的解决方法
  2. Ranger开源流水线docker化实践案例
  3. Hbase单点安装Version1.1.5
  4. dispatcher-servlet.xml文件配置模板
  5. vue 使用mock来模拟数据
  6. 获取iframe外的document
  7. css3中transition属性详解
  8. DbHelper 标准类
  9. MongDB日志分析
  10. vue学习16-插槽的使用