博客
关于我
Java重写override
阅读量:356 次
发布时间:2019-03-04

本文共 1008 字,大约阅读时间需要 3 分钟。

Java方法重写与覆盖详解

1. 方法重写(OVERRIDE)解析

在Java编程中,方法重写是子类对父类中的方法进行修改或完全重新实现的过程。这种机制允许子类在不改变方法签名的情况下,提供不同的实现方式。

方法重写的核心要点

  • 方法名和参数列表必须完全一致:这是判断是否为重写的关键依据。
  • 返回值类型和声明的异常类型必须小于或等于父类方法:子类方法的返回值类型或异常类型不能比父类更宽泛。
  • 访问修饰符的限制必须大于或等于父类方法:子类方法的访问级别不能低于父类。

方法重写示例

public class Vehicle {    public void run() {        System.out.println("跑....");    }    public void stop() {        System.out.println("停止!");    }    public Person whoIsPsg() {        return new Person();    }}public class Horse extends Vehicle {    public void run() {        System.out.println("四蹄翻飞,嘚嘚的。。");    }    public Student whoIsPsg() {        return new Student();    }}

在上述示例中,Horse类对父类Vehicle中的run()方法进行了重写,并保持了与父类相同的方法签名和访问修饰符。

2. 方法覆盖(Overloading)与重写的区别

方法覆盖

方法覆盖是指在同一个类中定义多个方法,参数列表虽然不同,但方法名相同。这种机制允许多个方法共享相同的名称,但参数类型不同。

方法重写

方法重写则是子类对父类中的方法进行修改或完全替代实现,要求方法名、参数列表必须完全一致。

3. 方法重写的限制

  • 子类方法的返回类型必须是父类方法返回类型的子类。
  • 子类方法抛出的异常类型必须是父类方法异常类型的子类。
  • 子类方法的访问修饰符必须大于或等于父类方法。

4. 总结

方法重写是Java面向对象编程的重要特性之一。它允许子类在不改变方法签名的情况下,提供更具体的实现。理解方法覆盖与重写的区别,以及掌握重写的规则,是掌握Java编程的关键环节。

转载地址:http://xkzr.baihongyu.com/

你可能感兴趣的文章
Nginx下配置codeigniter框架方法
查看>>
nginx添加模块与https支持
查看>>
Nginx的Rewrite正则表达式,匹配非某单词
查看>>
Nginx的使用总结(一)
查看>>
Nginx的是什么?干什么用的?
查看>>
Nginx访问控制_登陆权限的控制(http_auth_basic_module)
查看>>
nginx负载均衡的五种算法
查看>>
Nginx配置ssl实现https
查看>>
Nginx配置TCP代理指南
查看>>
Nginx配置代理解决本地html进行ajax请求接口跨域问题
查看>>
Nginx配置参数中文说明
查看>>
Nginx配置好ssl,但$_SERVER[‘HTTPS‘]取不到值
查看>>
Nginx配置实例-负载均衡实例:平均访问多台服务器
查看>>
Nio ByteBuffer组件读写指针切换原理与常用方法
查看>>
NIO Selector实现原理
查看>>
NISP一级,NISP二级报考说明,零基础入门到精通,收藏这篇就够了
查看>>
NI笔试——大数加法
查看>>
NLP 基于kashgari和BERT实现中文命名实体识别(NER)
查看>>
Nmap扫描教程之Nmap基础知识
查看>>
Nmap端口扫描工具Windows安装和命令大全(非常详细)零基础入门到精通,收藏这篇就够了
查看>>