栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

java基础:面向对象编程11-值传递

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

java基础:面向对象编程11-值传递

 参考:值传递的内存解析.xlsx

1.调用方法传递基本数据类型

package com.atguigu.java2;

public class ValueTransferTest {
	
	public static void main(String[] args) {
		ValueTransferTest vt= new ValueTransferTest();
		
		//需求:交换两个变量的值
		int m =5,n = 10;
		vt.swapData(m, n);	
		System.out.println("m=" + m + "n" + n);
	}

		
	public void swapData(int m,int n){
		System.out.println("sd交换之前m=" + m + "n" + n);
		int temp = m;
		 m = n;
		 n =temp;
		 System.out.println("sd交换之后m=" + m + "n" + n);
	}

}

运行结果:

 2.调用方法传递引用本数据类型,传递的是地址值

package com.atguigu.java2;


class Number{
	int m;
	int n;
}

public class ValueTransferTest2 {
	public static void main(String[] args) {
		//创建对象
		ValueTransferTest2 vt = new ValueTransferTest2();
		Number number = new Number();
		number.m =5;
		number.n =10;
		
		//调用方法交换数据
		vt.swapData(number);
		System.out.println("number.m = "+number.m+"   number.n="+number.n);
	}
		
		
	public  void swapData(Number number){
		int temp = number.m;
		number.m = number.n;
		number.n =temp;
	}
}
package com.atguigu.java2;

class Person{
	String name;
}


public class ValueTransferTest3 {
	public static void main(String[] args) {
		int m=5;
		int n=10;
		n=10;
		System.out.println("m=" + m + "n" + n);
		System.out.println("---------------------------");
		
		Person person = new Person();
		person.name="小龙哥";
				
		Person person2=person;//传递的是地址值
		person2.name="小泽姐";
		
		System.out.println(person.name);
		System.out.println(person2.name);
		
	}
}

运行结果:

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/439798.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号