Java

49. 참조형 매개변수 - 패스트캠퍼스 백엔드 부트캠프 3기

gkss2tpt 2024. 12. 20. 14:39

1. 참조형 매개변수

  • 변수의 값을 읽고 변경할 수 있다.(read & write)
class Data2 { int x; }

class Ex6_7 {
	public static void main(String[] args) {
    	Data2 d = new Data2();	// 객체생성
        d.x = 10;
        System.out.println("main() : x = " + d.x);
        
        change(d);
        System.out.pritnln("After change(d)");
        System.out.pritnln("main() : x = " + d.x);
    }
    
    static void change(Data2 d){	// 참조형 매개변수
    	d.x = 1000;
        System.out.println("change() : x = " + d.x);
    }
}

 

2. 참조형 반환타입

class Data3 { int x; }

class Ex6_8 {
	public static void main(String[] args){
    	Data3 d = new Data3();
        d.x = 10;
        
        Data3 d2 = copy(d);
        System.out.println("d.x =" + d.x);
        System.out.println("d2.x =" + d2.x);
    }
    
    static Data3 copy(Data3 d) {	// static은 객체 생성없이 호출가능
    	Data3 tmp = new Data3();	// 새로울 객체 tmp를 생성한다.
        
        tmp.x = d.x;			// d.x의 값을 tmp.x에 복사한다
        
        return tmp;			// 복사한 객체의 주소를 반환한다.
    }
}