Published 2022. 2. 13. 07:36

Ch6-24_참조형 매개변수

1. 기본형 매개변수 - 변수의 값을 읽기만 할 수 있다.(read only)

2. 참조형 매개변수 - 변수의 값을 읽고 변경할 수 있다.(read & write)

 

class Data2 { int x;}

class test {
	public static void main(String[] args) {
    	Data2 d = new Data2();
        d.x = 10;
        System.out.println("main() : x = " + d.x);
        
        change(d);
        
       	System.out.println("After change(d)");
        System.out.println("main() : x = " + d.x);
}

static void change(Data2 d) { // 참조형 매개변수
	d.x = 1000;
    System.out.println("change() : x = " + d.x);
}

//main() : x = 10
//change() : x = 1000
// After change(d)
//main() : x = 1000

 

 

Ch6-25_참조형 반환타입

class Data3 { int x; }

class test {
	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){
	Data3 tmp = new Data3();  // 새로운 객체 tmp를 생성한다.
    tmp.x = d.x;	// d.x의 값을 tmp.x에 복사한다.
    return tmp;	// 복사한 객체의 주소를 반환한다.
    }
}

// d.x = 10
// d2.x = 10

'JAVA > Chapter6' 카테고리의 다른 글

Ch6-30_오버로딩(overloading)  (0) 2022.02.13
Ch6-26_static 메서드와 인스턴스 메서드  (0) 2022.02.13
Ch6-22_호출스택(call stack)  (0) 2022.02.12
Ch6-17_메서드의 호출  (0) 2022.02.11
Ch6-8_객체 배열  (0) 2022.02.11
복사했습니다!