美文网首页
Java方法重载

Java方法重载

作者: Amy木婉清 | 来源:发表于2021-03-19 16:58 被阅读0次
image.png
方法的签名:方法名和参数列表

一个类中,不可以有两个方法的签名完全相同,即一个类中不可以有两个方法的方法名和参数列表完全一样。
如果一个类的两个方法名字相同,参数列表不同是可以的。

//编译错误
public class Cashier{
   public boolean pay(double money){...}
   public boolean pay(double money){...}
}

//编译正确
public class Cashier{
   public boolean pay(double money){...}
   public boolean pay(String cardId,String cardPwd){...}
}
方法重载及其意义
image.png

在Java语言中,允许多个方法的名称相同,但参数列表不同,称之为方法的重载(overload)


image.png
编译时根据签名绑定调用方法

编译器在编译时会根据签名来绑定调用不同的方法,我们可以把重载的方法看成是完全不同的方法,只不过恰好方法名相同而已。


image.png

方法的重载(overload):
1)发生在一个类中,方法名相同,参数列表不同,方法体不同
2)编译器在编译时根据方法的签名自动绑定调用的方法
同一个文件中可以包含多个类
public修饰的类只能有一个
public修饰的类必须与文件名相同
一般情况一个文件只包含一个


image.png

重载与返回值类型无关
重载与参数名称无关

package com.example.day01.oop.day02;

import static com.example.day01.day06.MethodDemo.say;

/**
 * @author zwp
 * 同一个文件中可以包含多个类
 * public修饰的类只能有一个
 * public修饰的类必须与文件名相同
 * 一般情况一个文件只包含一个类
 * @description: 重载demo演示
 * @date: 2021/3/19 16:14
 */
public class OverLoadDemo {
    public static void main(String[] args) {
        Aoo aoo = new Aoo();
        aoo.say();
        aoo.say("zhangsan");
        aoo.say(25);
        aoo.say(25,"zhangsan");
        aoo.say("zhangsan",25);
    }
}

//为了方便测试  一个文件中建多个类,正常情况下一个文件下面只有一个类
class Aoo { //测试方法的重载
    void say() {

    }

    void say(String name) {

    }

    void say(int age) {

    }

    void say(String name, int age) {

    }

    void say(int age, String name) {

    }
  /*  //错误示范,方法重载与返回值类型无关
    int say(){
        return  1;
    }*/
/*  //错误示范,方法重载与参数名字无关
  void say(String address){

  }*/
}

想调用类里面的方法,第一步就是声明对象,new 然后引用.方法
示例:

Student st  = new Student();
st.name=”znagsan”;
st.age=25;

相关文章

  • 方法重载与方法重写(@Overload @Override)

    java方法重载和方法重写(方法覆盖)的区别: 方法重载: Overload 方法重写: Override 批判,...

  • JVM方法调用

    方法重载和方法重写多态是面向对象程序设计的重要特性,方法重载和方法重写是Java语言实现多态的主要形式。方法重载指...

  • JAVA基础_方法的重载

    java语言当中的方法的重载: 1、方法重载又称为Overload 2、方法重载什么时候使用?【当在同一个类中,方...

  • Java中重载和覆盖(重写)的区别

    Java中重载和覆盖(重写)的区别 1,基本概念 重载(Overload) Java中的方法重载发生在同一个类里面...

  • 第31节:Java基础-类与对象

    前言 Java基础-类与对象,方法的重载,构造方法的重载,static关键字,main()方法,this关键字,包...

  • 02Dart:并不支持构造函数的重载

    Java 代码中,使用了重载构造函数的方法,该方法在 Java 中很普遍,重载的构造函数和之前的构造函数具有相同的...

  • java中的重载和typescript中的重载

    一、 java中重载 重载规则 被重载的方法必须改变参数列表(参数个数或类型不一样);被重载的方法可以改变返回类型...

  • 基本概念术语

    6.Java中的方法覆盖(Overriding)和方法重载(Overloading)是什么意思? Java中的方法...

  • 5.Java重载和重写的区别

    Java 方法重载和方法重写的区别有哪些? 解析:先明白重载和重写的定义。 一、方法重写(0verride) 在J...

  • Java方法重载

    《Java编程思想》笔记 概述 生活中我们常常可以用一个词来表达多个意思。比如,当我们说“吃东西”时,可以是“吃米...

网友评论

      本文标题:Java方法重载

      本文链接:https://www.haomeiwen.com/subject/gqxvcltx.html