java学习16-方法的重载-参数传递测试

续java学习15:https://blog.csdn.net/qq_40790831/article/details/85950549

一、方法的特性:重载(overload)
    重载:在同一类中,允许出现同名的方法,只要方法的参数列表不同,这样的方法就是重载
    参数列表不同:参数个数,类型,顺序等不同
    注意事项:
        1、参数列表必须不同;
        2、重载和参数的变量名无关
        3、重载和返回值类型无关
        4、重载和修饰符无关
    技巧:重载只看方法名和参数列表
    
    示例:对多个数的求和问题
        定义方法,对参数求和,参数没有规定几个和数据类型

public class MethodOverLoadDemo {
	
	
	/* 两个整数求和 */
	public static int add ( int a , int b ) {
		
		return a + b ; // 计算a + b 的值,并返回
	}
	
	/* 两个浮点数求和 */
	public static double add ( double a , double b ) { 
		
		return a + b ; // 计算 a + b 的值,并返回
	}
	
	/* 三个整数求和 */
	public static int add ( int a , int b , int c ) { 
		
		return a + b + c ; // 计算a、b、c的和,并返回 
	}
	
	/* 三个浮点数求和 */
	public static double add ( double a , double b , double c ) { 
		
		return a + b + c ; // 计算a、b、c的和,并返回
	}
	
	public static void main ( String [] args ) {
		
		System.out.println( "两个整数相加:" + add( 1 ,2 ) ) ; // 调用add方法,实现两个整数求和,并将返回的结果打印输出
		
		System.out.println( "两个浮点数相加:" + add( 1.5 , 2.5 ) ) ; // 调用add方法,实现两个浮点数求和,并将返回的结果打印输出

		System.out.println( "三个整数相加:" + add( 1 , 2 , 3 ) ) ; // 调用add方法,实现三个整数求和,并将返回的结果打印输出
		
		System.out.println( "三个浮点数相加:" + add( 1.5 , 2.5 , 3.5 ) ) ; // 调用add方法,实现三个浮点数求和,并将返回的结果打印输出 
	}
}

二、方法调用中的参数传递问题
        1、方法参数是基本数据类型
        2、方法参数是引用类型

public class MethodDemo_01 {
	
	public static void main ( String [] args ) {
		
		/* 基本数据类型 */
		
		int a = 1 ; // 定义变量a,并设置初始值为1
		
		int b = 2 ; // 定义变量b,并设置初始值为2
		
		change( a , b ) ; // 调用change方法,并传入a,b两个实参
		
		System.out.println( a ) ; // 打印输出a,结果是1
		
		System.out.println( b ) ; // 打印输出b,结果是2
		
		
		/* 引用数据类型 */
		
		int [] arr = { 1 , 2 , 3 , 4 } ;
		
		System.out.println( arr [ 2 ] ) ; // 打印调用方法之前的数组第三个元素
		
		change( arr ) ; // 调用重载的方法
		
		System.out.println( arr [ 2 ] ) ; //打印调用方法之后的数组第三个元素
		
	} 
	
	/* 定义无返回值方法,测试引用数据类型传参 */
	public static void change ( int [] arr ) {
		arr [ 2 ] = 100 ;
	}
	
	/* 定义无返回值方法,测试基本数据类型传参 */
	public static void change ( int a , int b ) {
		
		a = a + b ; // 将a + b 的值赋值给a
		
		b = b + a ; // 将b+a的值赋值给b
	}
}

 

你可能感兴趣的:(JAVA)