TIL

0724

casylm 2024. 7. 24. 23:15

제네릭 메서드

메서드를 호출하는 시점에 타입 인자를 전달해서 타입을 지정하는 것. 따라서 타입을 지정하면서 메서드를 호출

 

제네릭 타입은 static 메서드에서 사용 할 수 없다

제네릭 타입은 객체 생성 시 그 타입이 결정된다. static 메소드는 함수 프로그램 시작 시 만들어 진다.(인스턴스 단위가 아니라 클래스 단위이다). 즉, 타입이 정해지기 전에 만들어져야 하므로 사용 할 수 없다.

 

해결 방법은?

제네릭 메서드를 사용한다.

 

제네릭 타입과 제네릭 메서드의 우선순위

-> 제네릭 메서드가 우선순위를 가짐

 

왜?

제네릭 타입은 클래스 레벨에서 걸림

제네릭 메서드는 메서드 단위

제네릭 메서드가 타입 매개변수와 위치가 더 가까움 -> 우선순위를 가짐

 

SET

정의 : 세트(셋)은 유일한 요소들의 컬렉션.

 

특징

1) 유일성: 중복된 요소 존재 x. 요소 추가 시, 이미 존재하는 요소면 무시됨

2) 순서 미보장: 요소를 출력할 때 입력 순서와 다를 수 있음

3) 빠른 검색: 요소의 유무를 빠르게 확인 할 수 있도록 최적화 되어있음. 데이터 중복을 방지하고 빠른 조회를 가능하게 함

* list와 비교해서 알아두자

 

ex.

list: 장바구니 목록, 순서가 중요한 이벤트 목록

set: 회원 id의 집합 등