Java方法重写_动力节点Java学院整理
来源:互联网 发布:电子发票制作软件 编辑:程序博客网 时间:2024/06/05 02:43
一、方法重写(Override)
在Java中如何来定义重写:Java程序中类的继承特性可以产生一个子类,子类继承父类就拥有了父类的非私有的属性(方法和变量),在子类中可以增加自己的属性(方法和变量),同时也可以对父类中的方法进行扩展,以增强自己的功能,这样就称之为重写,也称为复写或者覆盖。所谓方法重写就是子类的方法和父类中继承下来的方法具有完全相同的方法名、返回值类型、方法的参数个数以及参数类型,这样才能被称为方法重写。
代码体现:
// 这是父类的定义
public class Person {
public void eat() {
System.out.println("=====这是父类Person的eat方法=======");
}
}
// 这是子类的定义
public class Student extends Person {
@Override
public void eat() {
System.out.println("===这是子类Student的eat方法===");
}
// main方法测试
public static void main(String[] args) {
Student student = new Student();
student.eat(); //输出:===这是子类Student的eat方法===
}
}
子类重写父类的方法后,在实例化子类的时候则调用的是子类中的方法,父类的方法就如同被覆盖了一样。如果在子类中需要调用父类的方法,则在子类方法中使用super关键字调用父类的方法,格式:super.父类中的方法名(参数列表)。
重写规则:
在进行方法重写的时候需要遵循以下规则才能实现方法重写:
(一)子类方法的参数列表必须和父类中被重写的方法的参数列表相同(参数个数和参数类型),否则只能实现方法的重载。
(二)子类方法的返回值类型必须和父类中被重写的方法返回值类型相同,否则只能实现方法重载。
(三)在Java规定,子类方法的访问权限不能比父类中被重写的方法的访问权限更小,必须大于或等于父类的访问权限。
(四)在重写的过程中,如果父类中被重写的方法抛出异常,则子类中的方法也要抛出异常。但是抛出的异常也有一定的约束--->子类不能抛出比父类更多的异常,只能抛出比父类更小的异常,或者不抛出异常。例如:父类方法抛出Exception,那么子类就只能抛出IOException或者抛出比Exception小的异常或者不抛出异常。
本文转自互联网,由动力节点整理发布
- Java方法重写_动力节点Java学院整理
- Java构造方法_动力节点Java学院整理
- Java重载与重写的区别_动力节点Java学院整理
- Java虚拟机 (JVM)运行机制_动力节点Java学院整理
- Java代码注释规范_动力节点Java学院整理
- Java运算符_动力节点Java学院整理
- Java中的关键字_动力节点Java学院整理
- Java字符编码原理_动力节点Java学院整理
- JVM(Java虚拟机)简介_动力节点Java学院整理
- Java初学者问题图解_动力节点Java学院整理
- Java多态_动力节点Java学院整理
- Java类的继承_动力节点Java学院整理
- Java数据结构之队列_动力节点Java学院整理
- Java数据结构之数组_动力节点Java学院整理
- Java数据结构之图_动力节点Java学院整理
- Java中的super关键字_动力节点Java学院整理
- Java Object类详解_动力节点Java学院整理
- Java Runtime类详解_动力节点Java学院整理
- git一小时入门教程及常见错误分析
- Spark开发电商日志分析用户行为聚合功能练习
- DSST算法详解
- 关于#ifdef __cplusplus extern "C" {...}的用法
- memset用法详解
- Java方法重写_动力节点Java学院整理
- 面向对象的三大特点
- IEnumerable和IEnumerator枚举器
- WdatePicker 无效日期或者超出范围
- mysql永久修改字符集
- 各种B树之比较
- C# gridview 显示两位小数
- 十年编程,是人玩技术还是技术玩人?
- Java并发编程之Lock