Java中方法的重载与重写

这篇具有很好参考价值的文章主要介绍了Java中方法的重载与重写。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。


前言

提示:这里可以添加本文要记录的大概内容:

方法的重载与重写容易混,所以单独拿出来比较
Java中方法的重载与重写


提示:以下是本篇文章正文内容,下面案例可供参考

方法重载

在同一个类中,允许定义一个以上同名的方法称为方法重载

方法重载的规则:

  1. 方法名相同
  2. 方法的参数必须不同,参数类型或参数个数不同
  3. 方法的重载与返回值类型无关
public class 方法重载 {
	public static void m1(int x) {
		System.out.println("第一个m1");		
	}

	public static void m1(double y) {
		System.out.println("第二个m1");
	}
	
	public static void main(String[] args) {
		m1(4.0);
	}
}

方法重写

子类将从父类中继承下来的方法重新实现,叫方法重写(重新编写方法体)

方法重写的规则:

  1. 方法名相同
  2. 参数相同
  3. 返回值类型相同
  4. 访问权限不小于父类
  5. 抛出的异常声明不大于父类

当我们要重写一个方法时,我们可以在子类中定义一个同名的方法,使用@Override注解标注该方法,来表明我们要重写父类中的方法。
下面是一个重写方法的例子:

public class Animal {
//父类
    public void move() {
        System.out.println("动物在移动");
    }
}

public class Dog extends Animal {
//子类
    @Override
    public void move() {
        System.out.println("狗在跑");
    }

    public static void main(String[] args) {
    //测试
        Animal animal = new Animal();
        Dog dog = new Dog();
        animal.move(); // 动物在移动
        dog.move(); // 狗在跑
    }
}

在上面的例子中,我们定义了一个Animal类和它的一个子类Dog
Animal类中有一个move()方法,它用来输出一句话“动物在移动”
Dog类中重写了move()方法,并在该方法中输出了一句话“狗在跑”

当我们调用move()方法时,如果调用的是Animal类的对象,就会输出“动物在移动”,如果调用的是Dog类的对象,就会输出“狗在跑”。
这就是方法重写的作用,它让我们在子类中可以重新定义父类中的方法,并且可以根据需要修改其行为。

overload和override的区别

verload是方法重载,override是方法重写,都是java多态性的体现

方法重载指的是同一类中,可以定义多个同名的方法
方法重载的语法规则:

  1. 方法名相同
  2. 方法参数必须不同,参数类型或个数不同
  3. 与返回值类型无关

方法重写指的是子类将从父类继承的方法进行重新实现
方法重写的语法规则:文章来源地址https://www.toymoban.com/news/detail-480354.html

  1. 方法名相同
  2. 方法参数相同
  3. 返回值类型相同
  4. 访问权限不小于父类权限
  5. 抛出的异常声明不大于父类的抛出的异常声明

到了这里,关于Java中方法的重载与重写的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Java重写(Override)&重载(Overload)

    目录 重写(Override)概述 重写(Override)讲解 重载(Overload)概述 重载(Override)讲解 Java面向对象编程中的重写(override)指的是子类可以重写其父类中的非private方法,使得子类在调用该方法时会使用自己的实现而不是父类的实现。 定义一个名为 Animal 的父类和一个名为 Cat 的子类,其

    2023年04月09日
    浏览(35)
  • Java语言中的重写和重载

    重写(override)和重载(overload)是编程语言中的两个常见概念,用于描述函数或方法的特定行为。 重写 指的是在子类中重新定义(覆盖)父类中已经存在的同名方法。重写可以修改或扩展父类的方法实现,使其更适合子类的需求。在重写中,子类方法的名称、参数类型、返

    2024年02月03日
    浏览(32)
  • java八股文面试[java基础]—— 重载 和 重写

      Overload Override Overwrite三者区别:   Java中,有一个名叫方法签名的东西,它的定义是这样的 Definition: Two of the components of a method declaration comprise the method signature—the method’s name and the parameter types. 大概意思是,方法签名有两部分组成——方法名和参数列表 我上面的函数的方法

    2024年02月12日
    浏览(39)
  • java.8 - java -override&overload 重写和重载

    重写是子类对父类的允许访问的方法的实现过程进行重新编写, 返回值和形参都不能改变 。 即外壳不变,核心重写! 重写的好处在于子类可以根据需要,定义特定于自己的行为。 也就是说子类能够根据需要实现父类的方法。 重写方法不能抛出新的检查异常或者比被重写方法

    2024年02月11日
    浏览(31)
  • 【JAVA】关于重写(Override)与重载(Overload)

    个人主页:【😊个人主页】 系列专栏:【❤️初识JAVA】 关于JAVA,我们也已经学习过一段时间了,今天我们来学习一下在JAVA中方法的重载与重写。 方法重载(overload)是指 在一个类中定义多个同名但参数列表不同的方法 。Java编译器会根据方法调用时传递的参数来选择调用

    2024年02月08日
    浏览(39)
  • 【JAVA杂货铺】一文带你走进面向对象编程|继承|重载|重写|期末复习系列 | (中4)

    🌈个人主页:  Aileen_0v0 🔥系列专栏 :Java学习系列专栏 💫个人格言:\\\"没有罗马,那就自己创造罗马~\\\"   目录 继承  私有成员变量在继承中的使用​编辑  当子类和父类变量不重名时: 当子类和父类重名时:  📝总结: 继承的含义: toString方法的作用:  重写和重载的区别 对比狗和

    2024年02月05日
    浏览(38)
  • JavaScript 手写代码 第五期(重写数组方法一)-可以改变原数组的方法

    我们在日常开发过程中,往往都是取出来直接用,从来不思考代码的底层实现逻辑,但当我开始研究一些底层的东西的时候,才开始理解了JavaScript每个方法和函数的底层实现思路,我认为这可以很好的提高我们的代码水平和逻辑思维。 push 从后面添加元素 返回push完以后数组

    2024年02月11日
    浏览(37)
  • 想解锁禁用的iPhone?除了可以使用电脑之外,这里还有不需要电脑的方法!

    多次输入错误的密码后,iPhone将显示“iPhone已禁用”。这种情况看起来很棘手,因为你现在不能用iPhone做任何事情。对于这种情况,我们提供了几种有效的方法来帮助你在最棘手的问题中解锁禁用的iPhone。你可以选择使用或不使用电脑来解锁禁用的iPhone。 iPhone的屏幕密码保护

    2024年02月11日
    浏览(37)
  • 重载和重写有什么区别

    重载和重写是Java中两个重要的概念。重载可以实现本类内的方法多态性,重写可以实现子类或实现类的多态性。 一、重载 在自然语言中,经常会出现“一词多义”的现象。比如:“墨水”,它可以指一种含有色素或染料的液体,墨水被用于书写或绘画;还可以指人的文化、

    2023年04月08日
    浏览(36)
  • Unity中的重载和重写

    重载:(两个必须一个可以) 参数名必须相同 参数列表必须不同 返回值类型可以不同 代码示例: 结果: 重写:(三个必须) 函数名必须相同 参数列表必须相同 返回值类型必须相同 代码示例: 父类 子类继承父类 结果: 多态、封装、继承的位置不同,重载在同一定义域

    2024年02月11日
    浏览(28)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包