方法重载
方法重载:
1.定义:一个类中的一组方法有相同的方法名,不同的参数。不同体现在参数的个数或参数的类型或参数的顺序
2.作用:为了使使用者便于记忆和调用 只需记录一个名字 执行不同的操作
3.自己设计方法重载:
- 调用方法时,首先通过方法名字定位方法
- 如果方法名字一致,可以通过参数的数据类型定位方法
- 如果没有与传递参数类型一致的 可以找一个参数类型可以进行转化(自动)【比如说 我有一个方法定义的int型变量,但是调用时输入了一个char类型的‘a’输出时会自动转化为97】
4.JDK1.5版本后出现了一个新的写法
int… x-------->动态参数列表-------.>参数类型固定 个数可以动态(0个也可以)
public void test(int... x) {
System.out.println("执行test方法携带动态列表"};
//输出方式和数组一样
for(i=0;i<x.length;i++)
{
System.out.println(x[i]);
}
}
- 动态列表的方法不能和相同类型的数组类型的方法构成方法重载,本质是一样的。比如 :
int…x 其实就等价于int[]x;
int[]…x其实就等价于int[][]x
但是,动态参数列表可以不传参数,数组不可以。 - public void test(int a,int… x)可以,但 public void test(int… x,int a)不可以。即动态参数列表必须放在方法参数的末尾。