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; // 복사한 객체의 주소를 반환한다.
}
}
'Java' 카테고리의 다른 글
51. 오버로딩 - 패스트캠퍼스 백엔드 부트캠프 3기 (0) | 2024.12.20 |
---|---|
50. static메서드와 인스턴스 메서드 - 패스트캠퍼스 백엔드 부트캠프 3기 (0) | 2024.12.20 |
48. 기본형 매개변수 - 패스트캠퍼스 백엔드 부트캠프 3기 (2) | 2024.12.20 |
47. 호출스택 - 패스트캠퍼스 백엔드 부트캠프 3기 (0) | 2024.12.20 |
46. return문, 반환값 - 패스트캠퍼스 백엔드 부트캠프 3기 (2) | 2024.12.19 |