티스토리 뷰
백엔드 애플리케이션을 만드는 도중, 유효성 검사를 위한 매서드를 만들기 위해 제네릭 타입 문법을 사용하게 되어, 제네릭 타입 문법을 정리해보려고 한다.
■ 제네릭이란?
▶ "데이터의 타입을 일반화(범용화)해서, 여러 타입에 재사용할 수 있게 만든 문법"
즉, 코드를 짤 때 정확한 타입을 미리 정하지 않고, 나중에 사용할 때 타입을 지정해서 유연하게 사용할 수 있도록 만든 문법이다.
우리가 int, String, double... 이런 타입들을 일일이 다 따로 만들면 귀찮을 것이다. 이때 제네릭은 '타입'을 일단 변수처럼 받아서,
나중에 사용할 때 구체적인 타입을 지정하는 것이다.
예시 - ) 클래스에서 사용;
class Box<T> {
private T item;
public void set(T item) {
this.item = item;
}
public T get() {
return item;
}
}
Box<String> stringBox = new Box<>();
stringBox.set("Hello"); // T는 String으로 동작;
Box<Integer> intBox = new Box<>();
intBox.set(123); // T는 Integer로 동작;
예시 - 2 ) 매서드에서 사용 ( 위 클래스(Box) 내부에 선언한 경우 )
public <T> void print(T value) {
System.out.println(value);
}
● public <T>: 제네릭 타입 T를 메서드에서 사용하겠다고 선언 ( 이 메서드 안에서만 T를 제네릭으로 선언 )
● print(T value): 어떤 타입이든 받을 수 있음!! ( 즉, 이 메서드는 무엇이든지 받아서 출력할 수 있는 매서드임!! )
'Java' 카테고리의 다른 글
| 자바 - try-catch-finally 구문, switch 구문 간단한 예제 (3) | 2025.08.11 |
|---|---|
| 자바 - 형변환 예제 ( 참조형 ) (1) | 2025.08.10 |
| 자바 - 기본형, 참조형 각각의 ==, equals 의미. (2) | 2025.08.05 |
| 자바 - 참조변수, 인스턴스, 객체 ( 메모리 저장 방식 부터 확실히 알고가자!! ) (8) | 2025.07.31 |
| 자바 - 자바의 다형성 → 인터페이스 (interface) (3) | 2025.07.31 |