【零基础学Java】—重写(二十)
【零基础学Java】—重写(二十)
一、重写和重载
- 重写
(Override)
:在继承关系当中,方法的名称一样,参数列表一样。重写又称为方法的覆盖、覆写。 - 重载
(Overload)
:方法的名称一样,参数列表不一样 - 方法的覆盖重写的特点:创建的是子类对象,则优先使用子类方法
方法覆盖重写的注意事项:
- 必须保证父子类之间方法的名称相同,参数列表也相同
@Override
:写在方法的前面,用来检测是不是有效的正确覆盖重写,这个注解就算不写,只要满足要求,也是正确的方法覆盖重写- 子类方法的返回值必须小于等于父类方法的返回值
java.lang.Object
类是所有类的公共最高父类(祖宗类),java.lang.String
就是Object的 子类- 子类方法的权限必须【大于等于】父类方法中的权限修饰符
- 小扩展提示:
public>protected>(default)>private
( 备注:(default)
不是关键字default
,而是什么都不写,留空)
二、在这里插入代码片
public class Phone {public void call(){System.out.println("打电话");}public void send(){System.out.println("发短信");}public void show(){System.out.println("显示号码");}
}
//定义一个新手机使用老手机作为父类
public class newPhone extends Phone {@Overridepublic void show() {super.show();//把父类的show方法拿过来重复使用//自己子类再来添加更多的内容System.out.println("显示姓名");System.out.println("显示头像");}
}
/*** @author :CaiCai* @date : 2022/4/9 15:15*/
public class demo01Phone {public static void main(String[] args) {Phone phone =new Phone();phone.call();phone.send();phone.show();System.out.println("=======");newPhone NewPhone=new newPhone();NewPhone.call();NewPhone.send();NewPhone.show();}
}
二、继承中构造方法的访问特点
继承关系中,父子类构造方法的访问特点:
1、子类构方法中有一个默认隐含的super()
调用,所以一定是先调用的父类构造方法,后执行的子类构造
2、子类构造可以通过super
关键字来子类构造调用父类重载构造
3、super的父类构造调用,必须是子类构造方法的第一个语句,不能一个子类构造调用多次super
构造
总结:子类必须调用父类构造方法,不能赠送super(),写了则用写的super指定调用,super只能有一个,还必须是第一个
三、super关键字的三种形式
- 在子类的成员方法中,访问父类的成员变量
- 在子类的成员方法中,访问父类的成员方法
- 在子类的构造方法中,访问父类的构造方法
【零基础学Java】—重写(二十)相关推荐
- sdram 时钟相位_零基础学FPGA (二十五)必会! 从静态时序分析到SDRAM时序收敛(下篇)...
七.SDRAM工作时钟相位偏移计算本文引用地址:http://www.eepw.com.cn/article/279083.htm 从上篇文章中我们知道,我们的数据是要经过一定的延时才会到达目标器件的 ...
- 【零基础学Java】—final关键字与四种用法(二十九)
[零基础学Java]-final关键字与四种用法(二十九) 一.final关键字 final关键字代表最终.不可改变的 常见的四种用法: 可以用来修饰一个类 可以用来修饰一个方法 可以用来修饰一个局部 ...
- 【零基础学Java】—继承父类并实现多个接口(二十五)
[零基础学Java]-继承父类并实现多个接口(二十五) 一.使用接口的注意事项 1️⃣接口是没有静态代码块或者构造方法的 2️⃣一个类的直接父类是唯一的,但是一个类可以同时实现多个接口 3️⃣如果实现 ...
- 【零基础学Java】—Java 日期时间(三十二)
[零基础学Java]-Java 日期时间(三十二) DateFormat 是日期/时间格式化子类的抽象类,它以语言无关的方式格式化和分析日期或时间. 日期/时间格式化子类(如SimpleDateFor ...
- 【零基础学Java】—笔记本USB接口案例(二十八)
[零基础学Java]-笔记本USB接口案例(二十八) 一.笔记本电脑 笔记本电脑(laptop)通常具备使用USB设备的功能,在生产时,笔记本都预留了可以插入USB设备的USB接口,但具体什么是USB ...
- 【零基础学Java】—Random的基本概述和使用(十二)
[零基础学Java]-Random的基本概述和使用(十二) Random类用来生成随机的数字,使用起来也是三个步骤 导包:import java.util.Random; 创建:Random r=ne ...
- 【零基础学Java】—多线程(四十九)
[零基础学Java]-多线程(四十九) 一.并发与并行 并发:指两个或多个事件在同一时间段内发生 并行:指两个或多个事件在同一时刻发生(同时发生) 二.进程和线程
- 【零基础学Java】—throw关键字(四十六)
[零基础学Java]-throw关键字(四十六) 一.throw关键字 public class demo {public static void main(String[] args) {//创建i ...
- 【零基础学Java】—继承的概述(十九)
[零基础学Java]-]继承的概述(十九) 一.面向对象的三大特征 面向对象的三大特征:封装性,继承性,多态性 继承是多态的前提,如果没有继承,就没有多态 继承解决的主要问题就是:共性抽取 继承关系的 ...
最新文章
- 动态规划走楼梯_动态规划问题为什么要画表格?
- JOGL - Java与OpenGl的绑定(转)
- 产品诞生过程--导图
- linux history 历史命令行查询和使用
- node js 部署相关
- 以核心体验设计为引,深入剖析“打铁”游戏《只狼》的精妙之处
- 面试官:面对千万级、亿级流量怎么处理?
- svn://127.0.0.1/shop
- PAT1030.——完美数列
- 在线框架引用|bootstrap|jq|jqmobile|CSS框架_无需整理
- mysql 身份证 年龄_mysql 中通过身份证号码计算年龄
- [转帖]国之魂,民之魂(硬骨头六连16勇士的最后一张照片)
- 用python画分析曲线图
- 【亿可控】第一天系统分析与设计
- IP Prefix-List简明扼要笔记
- 用python3写一个小球转动的抽奖小游戏
- java74-GUL面板
- urllib库用POST请求模仿有道在线翻译
- IBM MQ 搭建测试环境并测试消息的发送和接收
- 『DNS隧道工具』— dns2tcp