java 父类获取子类名称_Java入门第十六课:如何用继承的方法定义类
第十六课,尝试使用继承的方法定义其他类(被称为"父类")的子类。如何理解继承?例如水果和苹果的关系,我们可以说苹果继承了水果。
类的继承
Java中类的继承是通过扩展其他类而形成新类来实现的,原来的类称为父类(super class)或基类,新类称为原来类的子类(派生类)。在子类中,不仅包含父类的属性和方法,还可以增加新的属性和方法,使得父类的基本特征可被所有子类的对象共享。
注意:类的继承不改变类成员的访问权限。如果父类的成员是(public)公有的、被保护的(protected)或默认的(default),它的子类仍具有相应的这些特性。
类继承的定义格式如下:
class #子类名称# extends #父类名称#
{
//类的主体
}
extends关键字直接跟在子类名之后,其后面是该类要继承的父类名称。
代码示例
检查该程序,"Rectangle"类有字段"width","height"和构造函数,在main方法中创建对象打印对象的面积。
在"Rectangle"类下面添加类"class Square {}"。
改动代码,格式为:class Square extends Rectangle
运行,出错。该错误表示我们必须为"Square"类提供构造函数。
我们仅添加了一个参数"size",我们在"Rectangle"类中调用"super"构造函数并以"size"作为宽和高。
在main方法中以"100"为参数新建一个"Square"对象,并将其分配给变量"Square square"。
调用"square.getArea()"获得正方形面积并打印,"Square"类中的"getArea"方法继承自类"Rectangle"。
现在改变变量rect为"Rectangle"类型,尽管实际的对象是一个"Square"类型,您可以使用"Rectangle"继承类作为变量的类型,这个概念被称为多态。
提示:
Java不支持多继承,只允许一个类直接继承另一个类,即子类只能有一个父类,extends关键字后面只能有一个类名。尽管一个类只能有一个直接的父类,但是它可以有多个间接的父类。例如,苹果类继承水果类,水果类继承蔬果类,蔬果类继承食物类,那么蔬果类和食物类是苹果类的间接父类。
好了,本期到这里就结束了,有什么不懂或纠正的可以在下方评论区留言,小编也是初学者,需要大家的支持。大家记得点赞收藏分享关注哟!学习本是一个有始有终的事,只有坚持不懈的思考与积累,才能学有所成,学有所获。正所谓
下一期:
Java入门第十七课:如何在包中建类以及包的导入
java 父类获取子类名称_Java入门第十六课:如何用继承的方法定义类相关推荐
- window.addeventlistener 不能调用方法_Java入门第十四课:如何定义”方法“
第十四课,学习定义方法.一个对象包含三种最常见的成员:构造器.Field和方法.Field用于定义状态数据,而方法是行为特征的抽象. 那么什么是方法呢? 在Java中,方法就是用来完成解决某件事情或实 ...
- java 父类获取子类对象_Java多态性详解 (父类引用子类对象)
面向对象编程有三个特征,即封装.继承和多态. 封装隐藏了类的内部实现机制,从而可以在不影响使用者的前提下改变类的内部结构,同时保护了数据. 继承是为了重用父类代码,同时为实现多态性作准备.那么什么是多 ...
- java父类引用子类属性_Java多态性详解——父类引用子类对象
面向对象编程有三个特征,即封装.继承和多态. 封装隐藏了类的内部实现机制,从而可以在不影响使用者的前提下改变类的内部结构,同时保护了数据. 继承是为了重用父类代码,同时为实现多态性作准备.那么什么是多 ...
- java父类声明子类实现_java中父类声明子类实例化
问题: 1.比如两个类父类:Person 子类 Student extends Person在使用时候,这样写:Person person=null; //声明对象person=new Student ...
- java integer转成负数_Java 十进制和十六制之间的转化(负数的处理)
在一些情况下,我们需要将数字在十进制和十六制下互相转化. 在Java中将十进制转化成十六进制非常的简单. int var = 324; String hex = Integer.toHexString ...
- java 父类引用子类对象_java 父类引用指向子类对象
1. 无论是泛型还是普通父类引用指向子类对象,父类引用可见范围都是父类自己的变量或函数 2. 说明见注释 代码如下:父类 package com.atguigu.spring.beans; publi ...
- java 父类引用子类对象_java多态,如何理解父类引用指向子类对象
java多态,如何理解父类引用指向子类对象 要理解多态性,首先要知道什么是"向上转型". 我定义了一个子类Cat,它继承了Animal类,那么后者就是前者是父类.我可以通过 C ...
- java 路径获取文件名称_java 根据文件获取文件名及路径的方法
filelist=new HashMap (); /** * 递归方法 * @param path 文件路径 */ public static void find(String path){ File ...
- shell 脚本比较字符串相等_LINUX快速入门第十六章:Shell 流程控制
Shell 流程控制 和Java.PHP等语言不一样,sh的流程控制不可为空,如(以下为PHP流程控制写法): <?phpif (isset($_GET["q"])) { s ...
- Flink入门第十二课:DataStream api/Flink sql实现每隔5分钟统计最近一小时热门商品小案例
用到的数据文件 用到的数据文件 链接:https://pan.baidu.com/s/1uCk-IF4wWVfUkuuTAKaD0w 提取码:2hmu 1.需求 & 数据 用户行为数据不断写入 ...
最新文章
- 活动目录系列之一:主域控制器的搭建
- Editplus快捷键大全
- 虚拟机找不到共享文件夹
- 【UEditor】百度编辑器插入video视频
- 由更改密码引发的状况..(alter user xxx identified by password)
- 认知行为技术是计算机技术吗,基于认知行为模型的多Agent建模技术研究与应用_问答库...
- 雅马哈php mt7,雅马哈专业录音室监听耳机 HPH-MT7 正式发售!
- 在MAC下怎样用SSH连接远程LINUXserver
- 普通地图的六大要素_地图的基本要素是什么 主要是哪三大要素
- 搜狗CEO王小川:很多语音识别公司在AI领域掉进了陷阱
- 用python写聊天机器人_用Python 写一个机器人陪你聊天(文尾有彩蛋)
- Go 设计模式(Go patterns)
- python爬取58同城房子发布的手机号码_python爬虫:爬取58同城武汉地区商品房信息(最后碰到了58同城的反爬机制,吓得我不敢说话···)...
- 冲压模具设计之弹簧导套连续拉深模具设计方法
- CLC龍链:致力于打造基于区快链技术的全球跨境支付生态系统
- 程序员 2015 年工作总结
- matlab锯齿交换,MATLAB折线消除锯齿平滑
- 解决公务车Bug:公安违章管理中编辑新增的公安违章记录,点击保存按钮报:数据库操作异常,null
- Linux 驱动开发 六十六:多点触控(MT)协议
- 白杨SEO:微信视频号直播功能怎么开通?视频号有什么价值?
热门文章
- 【译文】Nodejs官方文档(Part 3 断言测试)
- oracle参数文件与启动过程
- NeHe OpenGL第九课:移动图像
- oracle 写递归,请问一个递归sql的写法
- keras中使用ImageDataGenerator对MINST数据集数据增强
- Python_基础1
- 一阶低通滤波器方程_一阶RC低通滤波器和RC高通滤波器简介-模拟/电源-与非网...
- dbf文件转excel_Excel批量转PDF,关键一步不能忘
- html链接描述,HTML常用文本标记,超级链接和路径描述
- hdoj4540:威威猫系列故事——打地鼠(dp基础题-数塔思想)