DevBoi

자바 -제네릭이란? 본문

Language/[Java]

자바 -제네릭이란?

HiSmith 2021. 6. 23. 23:44
반응형

제네릭... 제네릭이 뭘까...??

사실 개발을 조금 해봤으면 모를리 없다.

 

그래도. 가끔 헷갈리면서 잘못쓰는 경우를 대비해서 정리 및 작성

기초부터 잘알아야 어떨때 어떤걸 쓰는게 맞는지 알테니 고고

 

1. 제네릭 

제네릭이란, 하나의 값으로 여러가지 다른 데이터 타입들을 가질수 있도록 하는 방법이다.

 

List<String> test = new ArrayList<String>();

 

이런식으로 선언을 하는데, 제네릭 클래스는 위와 같이 String에 대한 고정이 아니라

사용자의 입력에 따라서 유동적으로 값을 받을수 있도록 하는 것이다.

 

장점 : Typemismatch 에러 방지, 관리 편리, 코드 재사용성 높아짐

 

 

 

<T> type

<E> Element

<K> Key

<V> Value

<N> Number

 

암묵적인 규칙이다.

 

쉽게말해

 

Public class TestClass<T>{};

 

Main(){

TestClass<Student> a = new TestClass<Student>();

 

}

 

요게된다.

또한 메소드도 가능하다.

class ClassName<K,V>{

private K test1

private V test2

 

void set(K test1,V test2)

{

this.test1 = test1;

this.test2 = test2;

}

}

 

 

Main(){

ClassName<String,Integer> dd =  new ClassName<String,Integer>();

 

dd.set("10"10);

dd.getTest1().getClass.getName() -> 이러면 출력값이 String으로 된다.

 

자동으로 String , Integer 에 대한 구분으로 넣어준다.

또한 이 사용은 다른 형식으로도 가능하다

}

 

 

흔히알고있는 HashMap의 경우에 이런식으로 선언이 Util 에 되어있다고 생각하면 된다.

다음에는 와일드 카드 및 제한 제네릭에 대한 정리를 해야겠다아

반응형

'Language > [Java]' 카테고리의 다른 글

JAVA stream 사용 예제_1  (0) 2021.09.02
Java Garbage Collection 이란?  (0) 2021.07.21
Optional 변수 예제 및 사용방법  (0) 2021.07.07
Stream 객체 사용 방법 및 예제  (0) 2021.07.05
제네릭 사용법 예제 쉽게 정리  (0) 2021.06.27