可变个数形参

一.
1.jdk 5.0新增的内容

  • 2.具体使用:
  • 2.1 可变个数形参的格式:数据类型 ... 变量名
  • 2.2 当调用可变个数形参的方法时,传入的参数个数可以是:0个,1个,2个,。。。
  • 2.3 可变个数形参的方法与本类中方法名相同,形参不同的方法之间构成重载
  • 2.4 可变个数形参的方法与本类中方法名相同,形参类型也相同的数组之间不构成重载。换句话说,二者不能共存。
  • 2.5 可变个数形参在方法的形参中,必须声明在末尾
  • 2.6 可变个数形参在方法的形参中,最多只能声明一个可变形参。

二. int... arr 这种可变形参等价于 int[] arr
public class InterviewTest1 {

public static void main(String[] args) {
    Base1 base = new Sub1();
    base.add(1, 2, 3);

    Sub1 s = (Sub1)base;
    s.add(1,2,3);
}

}

class Base1 {
public void add(int a, int... arr) {
System.out.println("base1");
}
}

class Sub1 extends Base1 {

public void add(int a, int[] arr) {
    System.out.println("sub_1");
}

public void add(int a, int b, int c) {
    System.out.println("sub_2");
}

}

注:
public void add(int a, int[] arr) {
System.out.println("sub_1");
}

等价于

public void add(int a, int... arr) {
System.out.println("sub_1");
}

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • package com.atguigu.java; /* * 可变个数的形参的方法: * 1.格式:对于方法的形参...
    DarkMonster阅读 393评论 0 0
  • 可变个数形参方法 一,说明:jdk 5.0新增的内容。 当不知道要传递的数据的个数的时候使用。 二,具体使用:
    noset阅读 163评论 0 0
  • Java1.5增加了新特性:可变参数:适用于参数个数不确定,类型确定的情况,java把可变参数当做数组处理。注意:...
    文茶君阅读 561评论 0 0
  • 面向对象学习三条主线 》类与类的成员:属性、方法、构造器;代码块(或初始化块)、内部类 》面向对象的三个特征...
    RockShi阅读 482评论 0 0
  • 收拾东西时,才发现自己真真什么都舍不得,连吃中药抓的药方都一张一张按照时间顺序摆好,还有注释,性平性寒性热。 其实...
    你说我听好么阅读 180评论 1 0