Java方法重载和可变参数

方法重载

一、定义:一个类中含两个以上同名的方法,他们之间就构成重载。允许多个方法的名称相同,但参数列表不同。

二、注意事项:

  1. 方法名必须相同。
  2. 形参列表必须不同(形参个数或者顺序至少有一个不同,参数名无要求)。
  3. 返回值类型无要求。
//形参列表必须不同,参数名无要求

public int calculate(int n1, int n2){
Systen out println(" calculate(int n1, int n2) 被调用"); 
return n1+n2;
//看看下面是否构成重载?没有构成,而是方法的重复定义。
public int calculate(int a1, int a2){
System.out. println(" calculate(int n1, int n2)被调用"); 
return a1+a2;
} 
//返回值无要求

public int calculate(int n1, int n2){
System.out.println("calculate(intn1,int n2)被调用")return n1+n2;
}
//没有构成方法重载,仍然是错误的,因为是方法的重复定义
public void calculate(int n1, int n2){
System.out.println("calculate(intn1,int n2)被调用")int res=n1+n2;

} 

可变参数

一、定义:将名称相同,功能也相同,但是形参个数不同的多个函数,封装为某个类中的一个函数。

访问权限修饰符 返回值类型 函数名 (数据类型… 变量名){
//方法体
}
这里的…格式是固定的,不可以改变分毫

二、规范

  1. 调用可变参数的方法时,传入实参的个数可以是0~n(n = 0,1,2…)
  2. 传入的实参也可以直接是一个数组。
  3. 可变参数的本质,其实就是一个数组,因此你也可以把它当数组来用。
  4. 当形参中既含有可变参数,也含有普通的参数,必须确保可变参数在形参列表的最后。
  5. 每个形参列表都只能有一个可变参数。
/*
有三个方法,分别实现返回姓名和两门课成绩(总分),返回姓名和三门课成绩(总分),返回姓名和五门课成绩(总分)。
封装成一个可变参数的方法
*/
//分析  1.方法名 showScore  2.形参(String ,double...)  3.返回String
class myhMethod {
	public String showScore(String name , double... scores ){	
		double totalScore=0;
		for(int i = 0; i < scores.length ; i++){
			totalScore += scores[i];
		}
	return name+scores.length+"门课的成绩总分为"=totalScore; 
	} 
{
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值