😴2022.08.14

일일 회고 4일차

할일 및 한일

경험 및 배움

이것이 자바다 5장(참조 타입) 복습

5장(참조 타입)을 복습하면서 간단히 짚고 넘어갔던 것들에 대해 조금 자세하게 볼 수 있었다.

예를 들어 null 같은 경우에도 지금까지의 생각은 그냥 비어있는 것, 값이 없는 것 이렇게 생각하였지만 정확한 정의는 참조 타입 변수가 힙 영역의 객체를 참조하지 않는 것 이었다.

그리고 배열 같은 경우에도 다차원 배열을 잘 몰랐지만 코드를 실습하면서 좀 더 정확히 이해할 수 있었다.

또한 깊은 복사, 얕은 복사의 차이점향상된 for에 대해 좀 더 알아보았다.

깊은 복사(deep copy)와 얕은 복사(shallow copy)

깊은 복사는 '실제 값'을 새로운 메모리 공간에 별도로 생성하는 것(실제값이 다름)이고, 얕은 복사는 '주소 값'을 복사하므로 참조하고 있는 실제 값이 같다.

얕은 복사는 복사한 배열을 수정하면 원 배열도 함께 수정된다.

깊은 복사는 복사한 배열을 수정해도 원 배열은 바뀌지 않는다.

향상된(개선된) for

향상된 for 문은 자바5 이상부터 제공하는데, 반복 실행을 하기 위해 카운터 변수와 증감식을 사용하지 않는다.

배열이나 컬렉션 항목의 개수만큼 반복하고, 자동으로 for 문을 빠져나간다.

다음은 향상된(개선된) for 문의 기본 형식이다.

for (자료형 변수명 : 배열) {
     실행문;
}

향상된 for 문은 배열처럼 여러 원소로 이루어진 집합의 모든 원소에 대해 특정 작업을 반복하기 위해 사용하는데 가독성이 좋아지고 코드가 간결해지는 장점이 있지만, 단점으로는 index를 사용하지 못한다고한다.

직렬화와 역직렬화에 대해 알아보려 했지만 약속된 풋살 시간이 다되어 오늘은 마치지 못할 것 같다.

개선 및 목표

  • 오늘 할 일을 다하지 못했으니 내일은 더 열심히 해보자.

  • 쉽거나 기본이라고 생각되는 것은 그냥 넘어가는 경향이 있는것 같다. 자세히 보면 모르는 것들 투성이니 제대로 공부하자.

Last updated