Test of Week 2

Test of Week 2

2주차에 배운 오브젝트, 메모리모델, 범위에 관한 시험이다.




총 5문제 중 4문제를 맞추면 통과이다.


1번은 위 코드를 보고 출력될 것으로 예상되는 문구를 선택하는 것인데 굉장히 쉽게 맞출 수 있었다.


2번 또한 어렵지 않게 맞출 수 있으며 이 때 주의할 것을 이전의 되짚어보는 영상에서 나왔듯 c2가 c1의 객체를 가리키게 되므로 c1의 정보를 바꾸면 c2의 정보도 같이 바뀌는 것이다.


3번은 c2=c1을 통해 바뀐 객체정보를 다시 돌리는 방법에 대해 묻고 있는데 아직까지 배운바로는 방법이 없었다. 추가적인 설명으로 이렇게 c2가 기존에 참조하던 객체를 떠나면 가비지 콜렉터가 자동적으로 해당 객체를 파괴한다고 한다.


4번도 예상 출력문을 고르는 것이고 어렵지 않게 맞출 수 있다.


5번은 약간 꼬아놓은 문제로 incrementA, incrementB 메쏘드를 보면 해당 객체형인 MyClass가 아닌 int, double과 같은 기본형으로 파라메터를 선언하였다. 따라서 이들은 주소값이 아닌 상수값으로 전달이 되므로 메쏘드에서 아무리 해당 값을 변화시켜도 복사된 변수일뿐이기에 기존값에는 전혀 영향을 끼치지 않는다. 따라서 10, 31.5가 정답.

댓글