제네릭이란?
데이터 타입을 외부에서 정의하는 것이 제네릭이다 예를 들어보자
아래 코드가 있다고 가정하자 class 정용화 오른쪽에 "<>" 이런 모양이 있는 걸 확인할 수 있으면 그 안에는 T 라는 문자가 있다 정용화라는 클래스 안에는 firstName 과 LastName 이라는 변수들이 있지만 T라는 데이터 타입으로 선언 되어 있다.
package step1_01.print;
class 정용화<T> {
T firstName ;
T LastName ;
}
public class 연습 {
public static void main(String[] args) {
정용화 <String> b = new 정용화<String>();
b.firstName= "용화";
System.out.println(b.firstName);
b.LastName = 1;
b.LastName = "1";
System.out.println(b.LastName);
}
}
class 연습에서
정용화 클래스를 b라는 변수로 new 해서 객체를 생성했다 근데 다른점을 느겼을 것이다 <T>가 아니라 <String> 으로 new가 되었다
그렇다면 firstName 과 LastName 는 String 데이터 타입으로 정의가 된다. 이것이 변수가 선언된 클래스 안에서 데이터타입이 정해진것이 아니라 외부에서 데이터타입이 정해진 제네릭이다.
'몰아 넣기' 카테고리의 다른 글
[java/spring] ResponseEntity 사용하기 (0) | 2021.09.24 |
---|---|
[java] 트리(Tree) 자료구조란? (0) | 2021.09.20 |
[java] Iterator 정리 (0) | 2021.08.25 |
[java/spring] 자바스크립트에서 submit 하는 몇 가지 (0) | 2021.08.25 |
[java/spring/pom] 내가 많이 쓰는 dependencies 들 (0) | 2021.08.25 |