美文网首页
java基础笔记04浅析抽象类的作用

java基础笔记04浅析抽象类的作用

作者: 三月有毒 | 来源:发表于2017-08-11 15:44 被阅读0次

抽象类是一种模板模式。抽象类为所有子类提供一个通用的模板,子类可以在这个通用的模板上进行扩展。

简单来说,就是继承的子类必须实现父类的属性和方法。抽象方法必须被子类实现。

如下图所例

抽象类可以包含属性,方法,构造方法。但是构造方法不能被用来new实例,只能用来被子类调用。

一般来说,抽象类限制比一般类大,一般类比抽象类更加灵活。当是在现实中很多父类中的方法是没有必要的,因为各个子类中的方法和父类必定不同,所以没有必要在父类里进行定义。

比如我们初中学习科学,到了高中科学被分为物理、化学、生物。我们不需要再去统一了解怎么学习科学这门知识,我们只需要知道物理、生物、化学每一门是怎么学的,而且每门的学习方法是我们必须要知道的,如同父类的抽象方法在子类中必须被实现。

当然,在这个例子中使用抽象类不是必须的,如果有人就是想知道科学的学习方法呢。我们在父类中加入这样一部分属性和方法也未尝不可。这时候我们可以用另一个例子,比如我们创建一个天气类,天气分为晴,雨,多云,台风,降雪等等,每个天气所造成的影响都不同。但我们怎么定义天气这个父类本身所造成的影响呢?太宽泛了,可能我们要去写几十上百条代码,最后的结果可能也并未有什么不同。但我们会很关心各种天气所带来的影响,如果一个地方的天气预报连这点实质性的东西都没有,那这个天气预报也不会有人看了。

另外,如果子类没有实现父类的抽象方法,则必须将子类也定义为为abstract类。

相关文章

  • java基础笔记04浅析抽象类的作用

    抽象类是一种模板模式。抽象类为所有子类提供一个通用的模板,子类可以在这个通用的模板上进行扩展。 简单来说,就是继承...

  • java io

    Java NIO浅析https://tech.meituan.com/2016/11/04/nio.html[ht...

  • Java中的抽象类与接口

    前提背景在面试到Java基础知识的时候,总喜欢问抽象类和接口的区别,在这里记录一下自己复习的笔记 抽象类 abst...

  • 2017-12-31

    JAVA学习日记(9) 抽象类,还不了解! 主要作用: 抽象类起到模板的作用,避免子类设计随意性 给出的抽象方法必...

  • Android 开发面试 “90” 问

    基础问题相关 1、接口的意义-百度 2、抽象类的意义-百度 3、内部类的作用-乐视 4、Java 虚拟机的特性-百...

  • Android 面经版

    基础问题相关(问题答案在下文): 1、接口的意义-百度2、抽象类的意义-百度3、内部类的作用-乐视4、Java 虚...

  • 浅析Java设计模式【1】——观察者

    前情内容 浅析Java设计模式【1】——观察者 浅析Java设计模式【2】——适配器 浅析Java设计模式【3】—...

  • 浅析Java设计模式【2】——适配器

    前情内容 浅析Java设计模式【1】——观察者 浅析Java设计模式【2】——适配器 浅析Java设计模式【3】—...

  • 学习笔记(一)

    Java基础 抽象类的意义http://blog.csdn.net/fengxuezhiye/article/de...

  • 浅析Java设计模式【3】——代理

    1. 前情内容 浅析Java设计模式【1】——观察者 浅析Java设计模式【2】——适配器 浅析Java设计模式【...

网友评论

      本文标题:java基础笔记04浅析抽象类的作用

      本文链接:https://www.haomeiwen.com/subject/vuolrxtx.html