首页 > 编程语言 >【Java基础】方法的重载、可变形参

【Java基础】方法的重载、可变形参

时间:2022-09-01 21:24:41浏览次数:50  
标签:field Java show 变形 void int 重载 方法 public

1.方法重载

同一个类中,方法名相同,参数个数或参数类型不同。
根据方法的参数列表的不同来区分。

    public int add(int x,int y){
        return x+y;
    }
    
    public int add(int x,int y,int z){
        return x+y+z;
    }
    
    public double add(double x,double y){
        return x+y;
    }

跟方法的权限修饰符、返回值类型、形参变量名、方法体都没关系!

2.可变个数形参

(1)历史
JDK5.0 以前:采用数组作为形参来定义方法,传入多个同一类型变量
JDK5.0 :采用可变个数形参来定义方法,传入多个同一类型变量

//这两个方法不能同时存在
    public void read(int a,String[] books){

    }
    
    public void read(int a,String...books){

    }

(2)使用

    public void show(int i){
        System.out.println(i);
    }

    public void show(String s){
        System.out.println("第一个方法");
    }

    public void show(String ... strs){
        System.out.println("第二个方法");

        for(int i = 0;i < strs.length;i++){
            System.out.println(strs[i]);
        }
    }

输出,可变参数中参数个数可以为0

        Field field = new Field();
        field.show(1);    //1
        field.show("hello");    //第一个方法
        field.show("张三","李四","王五");   //第二个方法 张三 李四 王五
        field.show();    //第二个方法

标签:field,Java,show,变形,void,int,重载,方法,public
From: https://www.cnblogs.com/zhishu/p/16647840.html

相关文章

  • Java常用类之日期操作类
    日期操作类在Java中对日期的操作类常用的有以下4种:Date类Calendar类DateFormat类SimpleDateFormat类一起来了解一下各个类如何使用的吧!!! 一、Date类1、......
  • 异常java.sql.SQLException: Before start of result set
    使用rs.getString();前一定要加上rs.next();原因:ResultSet对象代表SQL语句执行的结果集,维护指向其当前数据行的光标。每调用一次next()方法,光标向下移动一行。最初它位于......
  • 【Java基础】类的成员之二:方法(函数)
    1.方法表示类或对象具有的功能,也称为函数,定义在类中2.方法的执行过程方法被调用一次就会执行一次,方法中只能调用方法或属性,不能在方法内部定义方法。3.return关键字......
  • java中的语法糖
    Java语法糖语法糖(SyntacticSugar),也称糖衣语法,是由英国计算机学家Peter.J.Landin(彼得·兰丁)发明的一个术语,指在计算机语言中添加的某种语法,这种语法对语言的功能并没有......
  • 正则表达式在Java中的使用
    正则表达式在Java中的使用不仅限于String类中的match()方法!!!正则中的^与$首先我们来了解这两个符号在正则表达式中的作用:^符号放在表达式头部表示开始匹配$符号放......
  • 【学习底层原理系列】Java底层-synchronized锁-3轻量级锁篇
     一.上一篇回顾1.偏向锁中的批量撤销和批量重偏向2.偏向锁发生了竞争,锁就要升级二.轻量级锁拆解1.加锁流程构建LockRecord,将LockRecord的obj指向当前锁对象,然后将无......
  • 【Java基础】类的结构之一:属性(变量)
    1.成员变量与局部变量二者的区别成员变量局部变量声明的位置直接声明在类中方法形参或内部、代码块内、构造器内等修饰符private、public、static、fin......
  • java中的一维数组数组
    数组(array):是一种用于存储多个相同数据类型的存储模型(可以理解为容器)数组定义和静态初始化数组的两种定义格式:  格式1:    数据类型[]变量名;    范例......
  • 【Java基础】匿名对象
    1.匿名对象在创建对象时,没有显式的赋给一个变量名,匿名对象只能调用一次。Phonephone=newPhone();//正常的对象mail.show(phone);mall.show(newPhone());2.......
  • 学习日记Day4. Java 4
    Java个人总结4对象三大特性封装、继承、多态面向对象.以类的方式组织代码,以对象的组织(封装)数据对象内存分析多态存在条件有继承关系子类重写父类方法父类引......