generics (3) 썸네일형 리스트형 [ JAVA ] 지네릭스(Generics) - ③ 1. 와일드 카드 지네릭 타입이 다른 것만으로는 오버로딩이 성립하지 않음. 이럴 때 사용하기 위해 고안된 것이 '와일드 카드'이다. 와일드 카드는 기호 '?'로 표현. 와일드 카드는 어떠한 타입도 될 수 있다. : 제한 없음. 모든 타입이 가능 [ JAVA ] 지네릭스(Generics) - ② 1. 지네릭 클래스의 객체 생성과 사용 class Box { ArrayList list = new ArrayList(); void add(T item) { list.add(item); } T get(int i) { return list.get(i); } ArrayList getList() { return list; } int size() { return list.size(); } public String toString { return list.toString(); } } ① 참조변수와 생성자에 대입된 타입(매개변수화된 타입)이 일치해야 한다. Box appleBox = new Box(); // OK Box appleBox = new Box(); // 에러 // 두 타입이 상속관계라도 일치해야 한다. /.. [ JAVA ] 지네릭스(Generics) - ① 1. 지네릭스란? 지네릭스는 다양한 타입의 객체들을 다루는 메서드나 컬렉션 클래스에 컴파일 시의 타입 체크(compile-time type check)를 해주는 기능이다. 객체의 타입을 컴파일 시에 체크하기 때문에 객체의 타입 안정성을 높이고 형변환의 번거로움이 줄어든다. ⭐️ 지네릭스의 장점 1. 타입 안정성을 제공한다. 2. 타입체크와 형변환을 생략할 수 있으므로 코드가 간결해 진다. 2. 지네릭 클래스의 선언 class Box { // 지네릭 타입 T를 선언 T item; void setItem(T item) { this.item = item; } T getItem() { return item; } } // 지네릭 클래스가 된 Box클래스의 객체를 생성할 때는 참조변수와 생성자에 타입 T대신에 사용.. 이전 1 다음