【学习】java参数传递

<span style="font-family:SimHei;font-size:14px;">今天讲的内容之一,java的参数传递。第一次这么一行一行的去标注代码,但确实这样才能真正理解每一行代码的意思。这大致就是我所理解的意思,望指正。</span>
<span style="font-family:SimHei;font-size:14px;">
</span>
<span style="font-family:SimHei;font-size:14px;">package com.farsight.shine;

public class Entry {
	
	public static void main(String[] args) {

//		如果是基本数据类型,传递的就是数据本身。如果是引用数据类型,传递的就是引用变量的值(地址)

		
//		//基本类型转换	传递的就是数据本身
//		int b = 5;	//定义b, 并对b初始化
//		Entry mEntry = new Entry();	//定义一个Entry类的对象mEntry,new(开辟)一个空间
//		mEntry.increment(b);	//调用mEntry对象的成员方法increment,并将b的值传递给成员方法increment
//		System.out.println(b);		//打印b的值
		
//		//引用类型传递		传递的就是引用变量的值(地址)
//		Number m = new Number(10, 10);	//定义一个Number类的对象m,new(开辟)一个空间
//		Entry mEntry = new Entry();	//定义一个Entry类的对象mEntry,
//		mEntry.increment(m);		//引用成员方法,并将m指向的地址传递给成员方法increment
//		System.out.println(m.n);	//打印出对象m中成员变量n的值
//		System.out.println(m.k);	//打印出对象m中成员变量k的值
		
		//String类型传递		传递的就是引用变量的值(地址)
		String str = "hello";		//定义一个String类型的变量str,初始化为“hello”
		Entry mEntry = new Entry();	//定义一个Entry类的对象mEntry
		mEntry.change(str);		//引用成员方法change, 并将str指向的地址传递给成员方法change
		
		System.out.println(str);	//打印出str的值
 	}
	
	//传递基本数据类型		
	public void increment(int a) {
		a ++;	//入口函数(main)中将b的值传递给a,a的值改变,但b的值并未改变
	}
	
	//传递引用类型
	public void increment(Number w) {	//入口函数(main)中将m指向的地址传递给w, m和w同时指向同一个对象
		w.n ++;		//w所指向的对象的成员变量n,并作自加
		w.k --;		//w所指向的对象的成员变量k,并作自减
	}
	
	//传递String类型
	public void change(String s) {	//入口函数(main)中将变量str指向的地址传递给s
		s = "word";		//s重新指向另一片堆区,内容为“word”
	}

}

class Number {		//创建一个Number类
	int n;		//定义一个成员变量n
	int k;		//定义一个成员变量k
	public Number(int i, int j) {		//构造器对成员变量初始化
		n = i;		//初始化为i
		k = j;		//初始化为j
	}
}
</span>

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值