제네릭2 [Java] 제네릭은 처음부터 있었던 문법이 아니다(feat. raw type, type eraser) ㅇraw type: 다이아몬드()를 사용하는 일반적인 제네릭 방식과는 다르게, 다이아몬드를 사용하지 않는 방식내부의 타입 매개변수가 Object로 사용된다고 이해하면 된다GenericBox integerBox = new GenericBox();자바의 제네릭은 자바가 처음 등장할 때부터 있었던 것이 아니라, Java 5 이후에 등장했기 때문에 제네릭이 없던 시절의 과거 코드와 호환이 필요했다. 그래서 어쩔 수 없이 이런 raw type을 지원하는 것이다. 따라서 우리가 코드를 작성할 때는 raw type을 사용할 이유가 없다.※ raw type은 Java에만 있는 독특한 개념이다 type eraser도 마찬가지로 이해하면 된다ㅇtype eraser(타입 소거): 컴파일 시점에 제네릭 타입 정보를 제거하.. 2024. 9. 16. [OOP] 제네릭 명명 관례(w/Java) 일반적으로 대문자를 사용하고 용도에 맞는 단어의 첫 글자를 사용하는 관례를 따른다 T - Type(임의의 타입)class Box E - Element(컬렉션 요소)List K - Key(맵의 키)Map V - Value(맵의 값)Map R - Return Type(반환 타입)Converter ? - wildcard(아무거나 다 가능)List N - Numberclass NumberBox // 숫자 타입만 허용하는 제네릭 클래스 S, U, V etc. - 2nd, 3rd, 4th typesclass MultiType // 여러 개의 타입을 지원하는 제네릭 클래스 참고 및 출처: 김영한의 실전 자바 - 중급 2편https://www.inflearn.com/course/%EA%B9%80%.. 2024. 9. 16. 이전 1 다음