面向对象深入:继承03——抽象类
11.4 抽象类——只能作为父类存在,天生当爸爸的
抽象类不同于一般的类,它不能生成对象,只能作为父类存在。
抽象类具有高度抽象的特征,为所有子类提供统一的抽象方法。
11.4.1 创建抽象类——关键字abstract
abstract所修饰的类为抽象类。
抽象类是只有定义而无法实现对象的类。
抽象类中只关心所应实现的功能。
abstract class Dog {//抽象类类体 }抽象类无法产生对象,下面的语句是错误的 Dog d = new Dog();
11.4.2 抽象方法
abstract 修饰的方法为抽象方法。
抽象方法在形式上仅有方法的方法头部分,没有方法体。
abstract void out();
抽象方法是只定义了功能而未能具体实现的方法,这决定了抽象方法只能在父类派生子类时才能通过覆盖实现。
******
抽象类中可以没有抽象方法,但抽象方法所在的类必须是抽象类。
******
如果由抽象类派生出一个非抽象的子类,因为非抽象子类可以创建对象,所以在子类中必须覆盖掉父类(抽象类)中所有的抽象方法,否则,只能将子类定义为抽象类。
******
public class Example1108 {public static void main(String[] args){SonClass sc = new SonClass();sc.out();} }abstract class SuperClass //抽象类 {abstract void out(); }class SonClass extends SuperClass //子类继承抽象父类 {public void out() //子类实现父类的抽象方法 {System.out.println("SonClass");} }
我们在写大型程序时,一般先设计最顶层、最抽象的类和方法,然后逐步实现细节化的类和方法。这种设计方法由粗到细,容易分析和理解。
转载于:https://www.cnblogs.com/jolene-wu/p/8288715.html
面向对象深入:继承03——抽象类相关推荐
- Java面向对象(继承、抽象类)
面向对象 今日内容介绍 u 继承 u 抽象类 第1章 继承 1.1 继承的概念 在现实生活中,继承一般指的是子女继承父辈的财产.在程序中,继承描述的是事物之间的所属关系,通过继承可以使多种事物之间形成 ...
- JavaSE(面向对象、继承、抽象类)
JavaSE 面向对象 类和对象 定义一个标准类 创建并使用对象 对象的内存图 匿名对象 匿名对象的概述 使用匿名对象 继承 继承概述 为什么要有继承 继承的含义 继承的好处 继承的格式 格式 示例 ...
- java面向对象基础——继承、抽象类
一.继承 1.继承概述 为什么会有继承? 现实生活中,为什么要有继承? 程序中,为什么要有继承? 继承的含义 继承:在java中指的是"一个类"可以"继承自"& ...
- 面向对象之继承,抽象类、模板设计模式
第1章 复习回顾 1.1 类和对象 定义一个类 格式: 修饰符 class 类名{//类中的五大成分.1.成员变量2.构造方法3.成员方法4.内部类5.代码块 } 代码: public class S ...
- 《Java技术》第三次作业--面向对象——继承、抽象类、接口
1.阅读下面程序,分析是否能编译通过?如果不能,说明原因.应该如何修改?程序的运行结果是什么?为什么子类的构造方法在运行之前,必须调用父 类的构造方法?能不能反过来? class Grandparen ...
- python中继承和组合的区别_Py修行路 python基础 (十五)面向对象编程 继承 组合 接口和抽象类...
一.前提回忆: 1.类是用来描述某一类的事物,类的对象就是这一类事物中的一个个体.是事物就要有属性,属性分为 1:数据属性:就是变量 2:函数属性:就是函数,在面向对象里通常称为方法 注意:类和对象均 ...
- 13 面向对象-继承与抽象类
第01天 java面向对象 今日内容介绍 继承 抽象类 第1章 继承 1.1 继承的概述 在现实生活中,继承一般指的是子女继承父辈的财产.在程序中,继承描述的是事物之间的所属关系,通过继承可以 ...
- 【Java语言基础】面向对象之封装、继承、抽象类、接口、多态综合知识习题及总结day11
这几天逐渐被idea所折服,越来越喜欢这个优雅又强大的代码编辑器,有很多人说idea对很多初学者不友好,但是在我看来,只要你足够自律,并且英语不会太差,语法上关键的几个单词没什么大问题,idea对初学 ...
- 笔记整理3----Java语言高级(三)11 综合练习+12 面向对象-static变量 与 代码块+13 面向对象-继承与抽象类+14 面向对象-接口与多态+15 面向对象-包修饰符
11 综合练习+12 面向对象-static变量 与 代码块+13 面向对象-继承与抽象类+14 面向对象-接口与多态+15 面向对象-包&修饰符 第11天 综合练习 今日内容介绍 综合练习 ...
最新文章
- Python完全学习大师班
- Qt Creator桌面平台
- oracle删除多条从js到java_一次oracle大量数据删除经历
- python json是什么_python的json用法
- 字节跳动BVC2解码器率先支持移动平台H.266标准8K解码
- (@WhiteTaken)设计模式学习——代理模式
- logging日志输出模块
- android开发的学习路线
- ps去色的10种方法
- 三角网导线平差实例_三角网间接平差示例
- php二维数组声明方式,php二维数组定义
- C语言 —— 存储类相关的关键字 (持续更新中....)
- 用计算机语言说一局情话,计算机中的情话
- 某微信小程序连锁超市响应参数解密
- QtChart柱状图动态加载数据
- 房屋租赁系统 nodejs+vue微信小程序
- 你的收藏夹里,有哪些神奇有趣的小网站?
- 缩放图像、切割图像、图像类型转换、彩色转黑白、文字水印、图片水印
- 程序员的修仙之路-筑基篇
- 收下这份秘籍:如何提高投稿命中率
热门文章
- DownloadProvider 源码详细分析
- 将web项目deploy到tomcat的方法
- HandlerThread 类的学习(转载)
- request.getcontextPath() 详解
- 读PPPOE/PPPOA白皮书小结
- webstorm快捷键生成html页面,webstorm工具使用的快捷键
- 【IM】关于集成学习Bagging和Boosting的理解
- 损失函数中正则化项L1和L2的理解
- 对程序错误的处理——Windows核心编程学习手札之一
- DATE_FORMAT() 函数||DATE_SUB() 函数