😌2022.10.26
일일 회고 74회차
할일 및 한일
경험 및 배움
오늘은 오전에 수업을 들은 후 실습을 진행하고, 오후에는 이것이 자바다 13장(제네릭)부분을 공부하였다.
이번 단원은 제네릭인데, 생소하고 써본적이 한번도 없어서 어렵게 느껴지는 것 같다.
우선 제네릭을 쓰는 이유는 다음과 같다.
컴파일 시 좀 더 강한 타입 체크를 위해.
타입 변환(Casting)을 제거하기 위해.
Java 컴파일러는 제네릭을 사용하면 컴파일을 할 때 좀 더 강한 타입 체크를 하여, 에러를 사전에 방지할 수 있다고 한다. 또한 불필요한 타입 변환은 프로그램에 성능에 좋지 않은 영향을 끼친다.
따라서 굳이 필요하지 않은 타입 변환은 줄이는 것이 프로그램이 도움이 될 수 있는데, 예시는 다음과 같다.
List list = new ArrayList();
list.add("hello");
String str = (String) list.get(0)위의 코드는 List에 문자열을 저장하여, 이것을 불러올 때는 String 으로 타입 변환을 해주어야 불러올 수 있다. 하지만 위의 코드를 제네릭을 사용하여 변경하면, List에 저장되는 요소를 String 으로 국한할 수 있기 때문에, 불필요한 타입 변환을 줄일 수 있다.
List<String> list = new ArrayList<String>();
list.add("hello");
String str = list.get(0);또한 제네릭 타입은 타입을 파라미터로 갖는 클래스와 인터페이스를 뜻한다.
하지만 타입 파라미터를 사용해야 하는 이유는 무엇일까?
타입 파라미터를 사용해야 하는 이유는 위와 같이 타입 변환을 최소화하기 위해서이다.
이것이 자바다 2권부터는 생소하지 않은, 써보지 않은 부분들만 남았으니 천천히 공부하며 꼭 이해하고 넘어가려 한다.
개선 및 목표
내일은 제네릭의 남은 부분을 더 공부해보고, 스프링 강의를 들으며 개념을 잡는 것을 시작해보려 한다.
Last updated