陪丈母娘学编程——JAVA之继承篇

  • 概述继承
  • 总结

写在前面:最近阿姨迷上了和我学JAVA,也同时迷上了张亮的“继承”,为了和小丽在一起,我一定要留住阿姨,争取让她早日出师,我也早日迎娶小丽,升值加薪,走上人生巅峰!
–凹仔:阿姨,小丽在家吗?
–阿姨:出去和小亮玩了,你回家吧,凹仔。
–凹仔:阿姨,我是真的喜欢小丽,你不要这样啊~
–阿姨:你没戏,小亮继承了他爸的房子;
–凹仔:我真心喜欢小丽,阿姨,我要公平竞争!
–阿姨:公平竞争?小亮继承了他爸的奔驰~
–凹仔:阿姨,这些都是物质,小丽不是这样的人!
–阿姨:孩子,小亮还继承了他爸的公司,而且。。。。
–凹仔:阿姨,你这么说继承,那我就和你摆式摆式真正的JAVA里的继承!
–阿姨:JAVA啊,来凹仔你进屋~

概述继承

通过开篇前引子就可以大概了解到,所谓继承直白理解就是父亲拥有的东西传递给儿子,车子,房子,商铺等等,有这样一个初识,我们再来看JAVA中的继承。
首先,我们还记得每次编写代码都需要创建一个Class(类),如:

public Class Fu(){//创建一个名为Fu(父)的类}

这里每一个类Class(类)都可以作为父类来被继承,当然这里的继承并不是来者不拒式的收纳,而是像国外的《继承法案》一样是有章可循,系统完备的继承。
这里我们就说一下通常一个父类(Class Fu)会被继承哪些东西,大致来说有以下两种:
1.父类中的属性变量;
2.父类中的方法;
例:

public class Fu{int num1 = 20;//属性变量1(成员变量)float num2 = 20.1;//属性变量2public void method1(){//方法1System.out.println("这是父类方法1");}public void method1(){//方法1System.out.println("这是父类方法2");}
}

明白了可以继承父类的哪些方法,那么我们就再探究下为什么会用到继承?
看了引子我们都会羡慕小亮的“继承”,比起普通悲催码农有了这些的小亮简直是少奋斗十年,何不美哉!对,就是生活的轻松了。同样,再JAVA中使用继承也是为了是我们写代码轻松很多。设想,如果有两个类Class A,Class B,他们中都有共同的一些属性和方法,如:
Class A

public class A {int num1=10;int num2=20;int num3=30;public void EatMethod(){System.out.println("这是吃饭的方法");}public void PlayMethod(){System.out.println("这是玩的方法");}
}

Class B

public class B {int num1=10;int num2=20;int num4=40;public void WashMethod(){System.out.println("这是洗澡的方法");}public void PlayMethod(){System.out.println("这是玩的方法");}
}

通过这两个类比较发现,其中有很多相通的属性和方法,那么我们在写代码过程中就需要进行机械性地敲键盘,一是无味,二是效率不高,所以这里我们就可以使用继承的方法来代替重复内容。
总结上面的Class A,Class B,我们可以提取共有的属性来建一个Class Fu,例:

public class Fu {int num1=10;int num2=20;public void PlayMethod(){System.out.println("这是玩的方法");}
}

这样,Class A,Class B就先可以继承Class Fu来提取相同的属性及方法。例

Class A
public class A extends Fu{int num3 = 30;public void EatMethod(){System.out.println("这是吃饭的方法");}
}
Class B
public class B extends FU{int num4 = 40;public void WashMethod(){System.out.println("这是洗澡的方法");}
}

如此一来,A和B两个类就都继承了Fu类的属性及方法,接着再将两个子类特有的部分添加进去就完成了。
那到底有没有成功呢,我们来测试一下。新建一个测试类Class Test

public class Test{public static void main(String[] args){A a = new A();a.PlayMethod();}
}

运行结果:


虽然Class A中并没有输入PlayMethod()的方法代码,但因为继承了Class Fu(父类),所以此时作为子类的A同样也拥有了在父类定义的方法PlayMethod。
因此,通过这种提取类中相同部分作为父类,而后其他类在作为子类继承就大大提高了复用性,节省了机械地敲代码工作,顺便也挽留了秀发~

总结

待更新…
睡觉

陪丈母娘学编程——JAVA之继承篇相关推荐

  1. 零基础是学java还是python-零基础学编程java和python哪个好

    零基础学编程java和python哪个好 更新时间:2019年02月17日18时56分 来源:传智播客java培训 浏览次数: 如今人工智能行业的蓬勃发展让很多想要学习编程的人会犹豫Java和Pyth ...

  2. 小白学编程“Java小白”入门解疑大全

    成功的人分几种,有一种人叫做关系户,他们渠道多,广织关系网,有一种叫做平台户,他们平台有多硬,他们就有多硬,但无论是关系户还是平台户,依靠的总是别人的手.别人的嘴巴.别人辛苦创立下来的资源,归根到底, ...

  3. 少儿创意学编程(Scratch基础篇):第5课——绘画板

    <少儿创意学编程(Scratch基础篇)>,参考了英国公益组织发起的"code club(代码俱乐部)"--少儿免费学编程活动.愿为中国的少儿创意编程教育尽微薄之力,对 ...

  4. 少儿创意学编程(Scratch基础篇):第1课——摇滚乐队

    <少儿创意学编程(Scratch基础篇)>,参考了英国公益组织发起的"code club(代码俱乐部)"--少儿免费学编程活动.愿为中国的少儿创意编程教育尽微薄之力,对 ...

  5. 少儿创意学编程(Scratch基础篇):第6课——赛艇比赛

    <少儿创意学编程(Scratch基础篇)>,参考了英国公益组织发起的"code club(代码俱乐部)"--少儿免费学编程活动.愿为中国的少儿创意编程教育尽微薄之力,对 ...

  6. 你想边玩游戏边学编程吗?这篇文章帮你

    你想边玩游戏边学编程吗?当然可以! 最近在网上冲浪时,看到了这样一个网站: 作为一个热爱编程的MC党,能边玩MC边学编程是我梦寐以求的事情. 下面开始教程,走起! 先给出官方网址:Minecraft ...

  7. C语言学习——从零开始学编程(第三篇:选择与循环)

    文章目录 前言--小颖的话 一.语句 1)C语言中的语句有哪些 2)语句 二.选择语句 1) if选择语句 1. if语句 2.if-else语句 3.if - else if - else 多分支语 ...

  8. C语言学习——从零开始学编程(第五篇:数组)

    文章目录 前言--小颖的话 一.一维数组 1.一维数组的创建和初始化 1)一维数组的创建(定义) 2)一维数组的初始化 2.一维数组的使用 3.一维数组在内存中的存储 二.二维数组 1.二维数组的创建 ...

  9. C语言学习——从零开始学编程(第四篇:函数)

    目录 前言--小颖的话 一.函数的概念 二.C语言中函数的分类 1.库函数 1.自定义函数 1)函数名 2)函数返回值 3)函数参数 4)实现几个简单函数 三.函数的形参与实参 1.实际参数 2.形式 ...

最新文章

  1. AI最佳论文都在这里了!(非常全,快领!)
  2. 8.VMware View 4.6安装与部署-connection server(View Transfer Server)
  3. Android开发:怎样把Android studio中的Library公布到Jcenter
  4. JavaScript语言中文参考手册.chm
  5. 云栖发布|企业级互联网架构全新升级 ,助力数字创新
  6. compact php,php中compact函数的功能起什么作用呢?
  7. VS2013编译OBS源码
  8. [Python2.x] 标准库 urllib2 的使用细节
  9. ICCV 2021 |VisDrone2021 无人机视觉挑战赛启动
  10. cpython python 区别面试_python基础教程之千万不要错过这几道Python面试题
  11. 云原生的基石,一文读懂容器、Docker、Pod到底是什么!
  12. 使用Opencv分离图像通道/合并图像通道
  13. tomcat,zookeeper,activeMQ,Kafka设置jvm参数
  14. jdbc连接oracle mysql_JDBC连接MySQL、Oracle和SQL server的配置
  15. c语言考研必刷题小程序,小程序推荐:大学生必备刷题小程序,内容涵盖各种证书考试题型...
  16. 关于Latex学习网站推荐
  17. cad图纸怎么看懂_快速看懂cad图纸的教程全解
  18. 力扣(15.18)补9.19
  19. 【YOLOV5-5.x 源码解读】detect.py
  20. R语言基础知识(1)-数据类型及其常用方法

热门文章

  1. ORM框架简介及优缺点
  2. dijkstra算法证明
  3. 听说你想手机玩扫雷?原生JS扫雷游戏
  4. 使用cmi工具连接服务器远程装机exsi
  5. 华为云 CentOS 8 下 Nginx 1.20 PHP 8.2 安装
  6. 用python写10的阶乘_python 10的阶乘怎么算
  7. 一行修改网页内容的代码
  8. 买卖股票的最佳时机Ⅲ和Ⅳ
  9. OpenGL矩阵变换
  10. Flowable6.5框架遗留的新旧bug