1. 抽象方法

如果父类中一定含有某个方法,但如何实现并不能确定,这就应该是一个抽象方法。
如父类是图形,方法是计算图形的面积,因为每一种图形都有不同的面积计算公式,所以如何计算图形的面积不能确定,那么,这就是一个抽象方法。

2. 抽象方法和抽象类的定义

和C语言的虚类、虚函数作用相同。
抽象类:抽象方法所在的类,一定是抽象类。在class之前加abstract关键字
抽象方法:即加上abstract关键字,去掉大括号,不写内容,直接分号结束。(接口中也可以写抽象方法)
定义格式:

public abstract class 类名{成员变量1;成员变量2;...public abstract 返回值类型 方法名(参数列表);//抽象方法...public 返回值类型 方法名(参数列表){}//其他普通成员方法
}

3. 抽象方法和抽象类的使用

  1. 抽象类不能直接new对象,必须有子类继承抽象类。
  2. 子类必须覆盖重写父类所有的抽象方法(即去掉abstract关键字,加入方法体)。
  3. 然后创建子类对象使用

4. 注意事项

  1. 抽象类不能创建对象
  2. 抽象类可以有构造函数,但只是供子类构造方法调用进行父类成员变量初始化的。
  3. 抽象类不一定保护抽象方法。有抽象方法的一定是抽象类
  4. 抽象类的子类,必须覆盖重写抽象类的所有抽象方法。(快捷键:把光标放到子类类名报错的红线上,按 ALT+回车)
  5. 抽象类也可以多级继承。只要有一个抽象方法没有覆盖重写,就必须是抽象类,必须接着往下派生子类。只要所有的抽象方法都覆盖重写了,才不是抽象类,可以创建对象。

JAVA抽象类——abstract相关推荐

  1. java 抽象接口类,Java接口(interface)和Java抽象类(abstract class)的区别(详诉版)

    1.概述 一个软件设计的好坏,我想很大程度上取决于它的整体架构,而这个整体架构其实就是你对整个宏观商业业务的抽象框架, 当代表业务逻辑的高层抽象层结构合理时,你底层的具体实现需要考虑的就仅仅是一些算法 ...

  2. Java抽象类(Abstract Class)与接口(Interface)区别

    抽象类与接口比较 抽象类跟接口类似,都不能实例化,可能包含不需实现方法或已实现的方法. 抽象类可以定义一些不是静态或常量的字段,定义 public, protected, private访问级别的具体 ...

  3. 晋南讲堂之Java抽象类(abstract)与接口(interface)区分

    抽象类(abstract)和接口(interface)的对比 1. 抽象类(abstract)   我们一般声明一个抽象类按照如下形式: abstract class ClassName{//成员变量 ...

  4. java抽象类_Java抽象类

    java抽象类 Abstract class in Java is similar to interface except that it can contain default method imp ...

  5. Java接口和Java抽象类(转,原文已被删除)

    1.概述 一个软件设计的好坏,我想很大程度上取决于它的整体架构,而这个整体架构其实就是你对整个宏观商业业务的抽象框架,当代表业务逻辑的高层抽象层结构 合理时,你底层的具体实现需要考虑的就仅仅是一些算法 ...

  6. Java抽象类(abstract)、final关键字

    抽象类 (abstract) 抽象类的特点: 抽象类为继承而生 抽象方法不能有代码体 子类要想继承父类 就必须要重写父类的全部抽象方法 Father.java public abstract clas ...

  7. Java中抽象类 abstract和interface的区别

    abstract class和interface是Java语言中对于抽象类定义进行支持的两种机制,正是由于这两种机制的存在,才赋予了Java强大的面向对象能力. abstract class和inte ...

  8. java 抽象类 模板_Java学习day21-抽象类(abstract class)和模板设计模式(TemplateMethod)...

    一.抽象类(abstract class) 1.随着继承层次中一个个新子类的定义,类变的越来越具体,而父类则更一般.更通用.类的设计应该保证父类和子类能够共享特征.有时需要将一个父类设计的非常抽象,以 ...

  9. Java 面向对象 之 抽象类 abstract

    转载于 : http://www.verejava.com/?id=16992804621647 /**知识点: 抽象类 abstract题目: 爸爸叫我买一斤水果和一条鱼思路:1. 抽象出类:爸爸( ...

最新文章

  1. Qt中的QBoxLayout
  2. PPT怎么在剪映_剪映怎么剪辑音乐?添加、分割、导入音乐,图文详解!
  3. 【工业控制】What is a Waveform
  4. shell关闭指定进程
  5. Linux进阶之路——常用命令总结
  6. itest英语考试bug_itest(爱测试) 4.2.1 发布,开源BUG 跟踪管理 敏捷测试管理软件...
  7. 将TIMESTAMP类型的差值转化为秒的方法
  8. CSS Position(定位)
  9. 绘图的尺寸_Auto CAD机械绘图尺寸标注教程10(标注多重引线)
  10. 央行等四部门发布资管新规全文
  11. 转:管理欲望:领导者的自我觉察与突破
  12. 关于printf的输出——进制转换
  13. 给本地openwrt/LEDE软件源添加软件包,更新Package.sig签名文件,解决Signature check failed问题
  14. KubeCon 上海 SOFAStack Cloud Native Workshop 报名中
  15. 【抖音小程序】抖音小程序避免onClose重复回调 解决广告重复回调
  16. Java打印菱形与空心菱形
  17. 2D,2.5D,3D封装结构
  18. 《有毒的逻辑:为何有说服力的话反而不可信》PDF扫描版电子书下载
  19. SSM志愿者服务平台 计算机专业毕业设计源码22859
  20. docker运行mysql性能_使用docker运行mysql

热门文章

  1. C/C++编程:单一定义规则ODR(不理解)
  2. “吃啥补啥”未必靠谱!安发生物甘诺宝力送你正确“养肝攻略”
  3. xbox one 越狱_如何使用密码限制对Xbox One的访问
  4. postgresql 分词_使用Postgresql进行中文分词
  5. ArcGIS图层打开却不显示内容 解决方法之一
  6. 2021-05-26 2021年T电梯修理最新解析及T电梯修
  7. java trimleft_js如何实现java中的trim() ----------去掉两边空格
  8. js点击按钮,自动复制到粘贴板
  9. NC | 中科院先进院戴磊组开发SEER-FISH成像技术解析微生物组空间结构
  10. 第五节 利用Ogre 2.3实现雨,雪,爆炸,飞机喷气尾焰等粒子效果