乐字节Java继承|方法重写、super和final关键字
大家好,乐字节的小乐又来了,上一篇是:乐字节Java|JavaBean、继承与权限修饰,也是属于Java继承的,今天继续Java继承。

一、 方法的重写
父类不满足子类的要求,按需改写。注意 方法签名必须相同
在子类中可以根据需要对从基类中继承来的方法进行重写。
重写方法必须和被重写方法具有相同的方法名称、参数列表和返回类型。
重写方法不能使用比被重写方法更严格的访问权限
Override.java Overload.java
“==”:方法名、形参列表相同。
“≤”:返回值类型(基本类型必须相同) 以及抛出的异常类型,子类小于等于父类。
“≥”:访问权限,子类大于等于父类
注意属性不会重写
注意以下方法不会重写
1、静态方法不会重写 ,父类为静态,子类只能为静态,否则编译错误
2、final 修饰方法 否则编译错误
3、私有方法不会重写
二、 super关键字
1、在java类中使用super来引用父类的成员。
2、继承中的构造方法
1)、子类的构造的过程中必须调用其基类的构造方法。
2)、子类可以在自己的构造方法中使用super(argument_list)调用基类的构造方法。
使用this(argument_list)调用本类的另外的构造方法
3)、如果调用super,必须写子类构造方法的第一行
4)、如果子类的构造方法中没有显示地调用基类的构造方法,则系统默认调用基类无参的构造方法。
5)、如果子类构造方法中既没有显示调用基类构造方法,而基类中又没有无参的构造方法,则编译出错。 TestSuperSub.java

例2


让我们来做些练习:
根据前面的程序,构造“Teacher”类,继承“Person”类。要求:
1、 增加“职称(String)”属性
2、 具有和”Student”类类似的重载构造方法
3、 重写“Person”类的info()方法,增加”职称”信息。
三、 final关键字
final 表示最终的。
修饰类,表示该类不能被继承
修饰方法,表示该方法不能被重写
修饰属性,表示常量,值一旦确定不可改变。
乐字节原创,请继续关注乐字节
Java继承先就介绍到这里,下次我们再看Java多态。
乐字节Java继承|方法重写、super和final关键字的更多相关文章
- java的方法重写 ,多态和关键字 instanceof和final
package cn.pen; /*final 是一个java的关键字,用于修饰局部变量.属性.方法.类,表示最终的意思. final修饰类表示最终类,无法被继承.public final class ...
- 20面向对象三特征 之继承 方法重写 super
继承是:多个类有重复内容,把重复内容放到一个新类中,就可以通过extends关键词去让原来的类和新类产生继承关系,子类只能拿到父类一部分信息.通过extends关键词去指明类与类之间的关系,一个父类可 ...
- 乐字节Java|封装JavaBean、继承与权限修饰
本文继续讲Java封装.上一篇:乐字节Java|GC垃圾回收机制.package和import语句 这次讲述JavaBean.继承与权限修饰 一. 封装javaBean 封装(Encapsulatio ...
- 乐字节Java反射之三:方法、数组、类加载器和类的生命周期
本文承接上一篇:乐字节Java发射之二:实例化对象.接口与父类.修饰符和属性 继续讲述Java反射之三:方法.数组.类加载器 一.方法 获取所有方法(包括父类或接口),使用Method即可. publ ...
- 乐字节Java编程语言发展,面向对象和类
大家好,上次我们讲过了乐字节Java编程之方法.调用.重载.递归,接下来我们将会进入到Java封装的内容.Java编程语言发展,面向对象和类. 一.编程语言的发展 机器语言——直接由计算机的指令组成, ...
- 乐字节Java反射之一:反射概念与获取反射源头class
一.Java反射机制概念 “程序运行时,允许改变程序结构或变量类型,这种语言称为动态语言”,如Python, Ruby是动态语言:显然C++,Java,C#不是动态语言,但是JAVA有着一个非常突出 ...
- Java学习笔记二十二:Java的方法重写
Java的方法重写 一:什么是方法的重写: 如果子类对继承父类的方法不满意,是可以重写父类继承的方法的,当调用方法时会优先调用子类的方法. 语法规则 返回值类型.方法名.参数类型及个数都要与父类继承的 ...
- 乐字节Java|GC垃圾回收机制、package和import
本文接上一篇:乐字节Java|this关键字.static关键字.block块.本文是接着讲述JavaGC垃圾回收机制.package 和 import语句. 一.GC垃圾回收机制 GC全名:Garb ...
- 乐字节Java反射之四:反射相关操作
大家好,乐字节小乐继续为Java初学者讲述Java基础知识.上次说到乐字节Java反射之三:方法.数组.类加载器,这次是Java反射之四:反射相关操作 1.操作属性 //1.获取Class对象 Cla ...
随机推荐
- 《挑战30天C++入门极限》在c/c++中利用数组名作为函数参数传递排序和用指针进行排序的例子。
在c/c++中利用数组名作为函数参数传递排序和用指针进行排序的例子. 以下两个例子要非常注意,函数传递的不是数组中数组元素的真实值而是数组在内存中的实际地址. #include <std ...
- docker安装postgresql
1.在linux执行以下代码: docker run -p : -v /home/docker/postgresql/data:/var/lib/postgresql/data -e POSTGRES ...
- MySQL之级联删除、级联更新、级联置空
1. 准备测试表 # 专业表major ))engine=innodb default charset=utf8; # 学生表mstudent ), major int)engine=innodb d ...
- c和s标签
<s:if test="#request.iflag=='fj'"> <a title="复检录入" href="javascrip ...
- 利用Wireshark抓取并分析OpenFlow协议报文
OpenFlow 交换机与控制器交互步骤 1. 利用Mininet仿真平台构建如下图所示的网络拓扑,配置主机h1和h2的IP地址(h1:10.0.0.1,h2:10.0.0.2),测试两台主机之间的网 ...
- centos 普通用户 和 root 相互切换方法
root 用户切换为普通用户 :用 login -f username (加 -f 不用输入密码)例如普通用户的用户名为hadoop,这里就是 login -f hadoop 普通用户切换为root用 ...
- Qt--core模块概述
QtCore模块是所有其它Qt模块的基础,包含以下核心功能: Qt Data Types:数据类型Qt Object Model:对象模型(包括元对象模型.属性系统.信号与槽机制.对象树)Input/ ...
- Flutter -------- 网络请求之HttpClient
今天来说说Flutter中的网络请求,HttpClient网络请求,包含get,post get var data; _get() async { Map newTitle; var response ...
- Maven Multi-Module Example
Maven Multi-Module - 国内版 Binghttps://cn.bing.com/search?q=Maven+Multi-Module&qs=n&form=QBRE& ...
- mysql的备份与还原,安装(window)
之前一直使用的navicat的自动的备份功能.但是在使用navicat的还原功能时,贼慢. 今天要做的是window服务器上将mysql单个数据库备份.然后还原到我的mac笔记本上. 本来以为很快的, ...