Java転送パラメータ

640 ワード

javaは値伝達です
1つの関数Aにおいて、B関数を用いて、B関数でA関数の属性を変更したい場合は、
package com.lee.explore;

public class TestVars {

	public void a(){
		int a = 0;
		this.b(a);
		//       
		System.out.println(a);
		
		//      
		TestVarA aa = new TestVarA();
		this.c(aa);
		System.out.println("    : " + aa.getA());
	}
	public void b(int a){
		a = 2;
	}
	public void c(TestVarA aa){
		aa.setA(32);
	}
	public static void main(String[] args) {
		TestVars t = new TestVars();
		t.a();
	}

}
class TestVarA{
	int a = 0;

	public int getA() {
		return a;
	}

	public void setA(int a) {
		this.a = a;
	}
	
}

オブジェクトを使用します.