专栏首页swag code抽象类与抽象方法

抽象类与抽象方法

在我们抽象实例对象的时候,有这样一种情况,往上层抽象时就会发现很难描述对象的属性和行为,比如“形状” ,其方法计算面积怎么计算?正方形知道怎么计算,长方形也知道怎么计算,但是形状呢,你肯定会问什么形状,不告诉我,我怎么计算呢?好吧,形状确实是有面积的,但是又无法描述其实现方式,这种包含类我们可以抽象出一个抽象类。

抽象类由于其有可能有无法实现的方法(抽象方法),所以不能被实例化。

抽象类的特征

1)使用abstract关键字修饰的类称为抽象类 2)抽象类不能实例化对象,原因是抽象方法无法被调用 3)有抽象方法的类肯定是抽象类,但是抽象类中不是必须有抽象方法

如果许多类都有相同的方法,单实现方式不一样,这样我们可以抽象出父类,在父类中声明方法但是并不进行实现,交由其子类实现。

抽象类用来规范一些子类的行为的,它可以做父类。

如:动物类,我们知道动物有移动的行为,有吃的行为但是你能知道动物是怎么移动,怎么呼吸,吃什么吗?不是具体的动物相信你肯定无法回答,这样我们就需要创建抽象的动物类

public abstract class Animal { } 

抽象动物类 1.抽象类不能直接实例化,必须通过子类

abstract void eat(); 

抽象吃的方法(行为) 2.抽象方法只需声明,不需要实现

附图,这个比喻无敌~~~

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • MargeSort-归并排序

    sr
  • swap()交换两个变量的方法汇总

    sr
  • Tomcat服务器配置Https协议

    修改Tomcat配置文件: 打开Tomcat安装目录/conf/server.xml,修改如下配置,并取消注释 注:这里以Tomcat8.0为例,8.5以上配...

    sr
  • 资源 | 让AI学会刨根问底和放飞自我,斯坦福最新问答数据集CoQA

    作者:Siva Reddy、Danqi Chen、Christopher D. Manning

    机器之心
  • jQuery仿淘宝登录拖动滑块验证插件优化版

    今天写项目的时候需要一个拖动滑块验证功能,就在网上找了一个,但是有一点小 bug ,我优化了一下,分享给大家。效果如下图:

    德顺
  • 数据结构 第13讲 三元组 (F、C、L/R) 序列创建二叉树

    /* 输入三元组 (F、C、L/R) 序列输入一棵二叉树的诸边(其中 F 表示双亲结点的标识,C 表示孩子结点标识,L/R...

    rainchxy
  • 真正的博士是如何参加AAAI, ICML, ICLR等AI顶会的?

    源于对学术的热爱,让很多人走上了博士这条求索之路,而热爱会让他们勤奋付出,勤奋让他们成为佼佼者。

    AI科技大本营
  • 孪生网络:使用双头神经网络进行元学习

    自我监督学习的研究正在发展,以开发完全不需要标签的结构(在训练数据本身中巧妙地找到标签),但其用例却受到限制。

    deephub
  • 【LeetCode】Python实现-686. 重复叠加字符串匹配

    给定两个字符串 A 和 B, 寻找重复叠加字符串A的最小次数,使得字符串B成为叠加后的字符串A的子串,如果不存在则返回 -1。

    用户7886150
  • 校园iptv系统能实现哪些功能?

    随着多媒体网络教学的普及,校园iptv系统也越来越广泛的应用于各个高校,各种各样的音频、视频影像教学素材应运而生。极大的方便了校园师生的工作、学习和生活,为了能...

    点量小崔

扫码关注云+社区

领取腾讯云代金券