方法重载&方法参数传递(基本类型和引用类型)

本文介绍了Java中方法的定义与重载,展示了如何根据参数类型进行方法调用。通过示例代码解释了方法不能嵌套定义,void方法可以不写return,以及方法的通用格式。同时,详细讨论了方法参数的传递,强调了基本类型参数和引用类型参数的区别,阐述了方法调用完毕后栈内存的变化。
摘要由CSDN通过智能技术生成

方法的注意事项

方法不能嵌套定义

void表示无返回值,可省略return,也可单独的书写return,后面不加数据

请添加图片描述

方法的通用格式

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

方法重载

在这里插入图片描述
请添加图片描述

public class shiyan1 {
	public static void main (String[] args) {
    //与返回值无关
	//在调用的时候,Java虚拟机会通过参数不同来区分同名的方法
		int a=10;int b=20;
		int result =shujuhe(a,b); 
		System.out.println(result);
		double result2 =shujuhe( a,b); 
		System.out.println(result2);
		int result3 =shujuhe(10,39,88); 
		System.out.println(result3);
		
	}
	//需求1:求两个int类型数据和的方法
	public static int shujuhe(int a,int b)
	{
		return a+b;
		}
	//需求2:求两个double类型数据和的方法
	public static double shujuhe(double a,double b)
	{
        return a+b;

				}
	//需求3:求三个int类型数据和的方法
	public static int shujuhe(int a,int b,int c)
	{
		return a+b+c;
	
	}
}


输出结果:
30
30.0
137

需求:使用方法重载的思想,设计比较两个整数是否相同的方法,兼容全整数类型(byte,short,int,long)

public class shiyan1 {
	
	public static void main (String[] args) {
//会根据参数数值自动判断是哪个方法 所以有时不进入其他的方法 需要进行类型转换
		
		
		//另一种调用方式
		/*boolean result = shujuhe(10,20);
		System.out.println(result);*/
		
		System.out.println(shujuhe/*强制类型转换*/((byte)10,(byte)20));	
		System.out.println(shujuhe((short)100,(short)101));
		System.out.println(shujuhe (100,101));
		System.out.println(shujuhe(10L,100L));	
	}
	public static boolean shujuhe(byte a,byte b)
	{
		if (a==b)
		{
			System.out.println("1");	
			return true;
		}
		else return false;
		}	
	public static boolean shujuhe(short a,short b)
	{
		System.out.println("2");
        return a==b;
				}	
	public static boolean shujuhe(int a,int b)
	{
		System.out.println("3");
		return a==b;
	
	}
	public static boolean shujuhe(long a,long b)
	{
		if(a==b)
		{			
		return a==b;	
	}
	else return false;
}
}


输出结果:
false
2
false
3
false
false

方法的参数传递

对于基本数据类型的参数,形式参数的改变,不影响实际参数的值

请添加图片描述
change方法调用完毕 从栈内存消失
再次输出 结果还是为100;
执行完毕;
main 方法也从栈内存消失

方法参数传递(引用类型)

对于引用型的参数,形式参数的改变,影响实际参数的值

请添加图片描述
请添加图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值