티스토리 뷰
#개념정리
Generic(제네릭)?
하나의 코드를 여러 타입에 대하여 재사용할 수 있도록 해주는 기술
Generic(제네릭 클래스)?
일반적인 코드를 작성하고 이 코드를 다양한 타입의 객체 대하여 재사용하는 객체 지향 기법
즉, 구체적인 타입을 정하지 않고 변수형태로 적어내어 클래스 내부에서 결정하는 것
타입 매개변수?
제네릭클래스에서는 타입을 변수로 표시하는데 이를 뜻함
타입 매개변수의 표기?(정해진 것은 아니다.)
E - Element
K - Key
T - Type
V - value
S,U,V 등 2번째, 3번째, 4번째 타입 (타입형을 다중으로 사용가능)
다이아몬드 구조
제네릭클래스에서 생성자 호출시 타입 인수를 구체적으로 주지 않아도 된다.
클래스명<타입형> 매개변수 = new 클래스명<>( );
ex) Box<Integer> b = new Box<>( );
Gengric 구조
1)단일 타입 매개변수
①제네릭 클래스의 타입매개변수 생성
class 클래스명<타입매개변수>{ -> class Box<T>{
②getter/setter 생성
필드와 getter/setter생성한다.
③제네릭클래스 객체선언
클래스명 매개변수 = new 클래스명( );
-> Box b = new Box( );
//이럴경우는 타입이 미지정이라 setter에 타입에 상관없이 기재 가능
클래스명<타입매개변수> 매개변수 = new 클래스명( );
-> Box<Double> b = new Box( );
-> Box<Double> b = new Box<>( );
-> Box<Double> b = new Box<Double>( );
2)다중 타입 매개변수
①상속받을 인터페이스 or 클래스에 타입매개변수를 지정한다.
public interface Prir<T,S>{
public T type( );
public S sype( );
}
②타입 매개변수를 지정한 인터페이스 or 클래스를 상속받는다.
public class Order<T,S> implements Pair<T,S>{
private T type;
private S sype;
//T와 S는 type와 sype의 타입이다.
③생성자 생성
public Order(T type S sype){
this.type = type;
this.sype = sype;
}
//인터페이스의 오버라이딩을 해준다.
출력
Order<String,Integer> o = new Order<String,Integer>("허니버터칩",1200);
'Java > 개념' 카테고리의 다른 글
JAVA Generic(제네릭 인터페이스) (0) | 2020.05.15 |
---|---|
JAVA Generic(제네릭 메서드) (0) | 2020.05.15 |
JAVA package/java.util 총 정리 (0) | 2020.05.10 |
JAVA package/java.util/StringTokenizer (0) | 2020.05.10 |
JAVA package/java.util/Calendar (0) | 2020.05.10 |
- Total
- Today
- Yesterday
- 육회물회 #금복주류 #소메랑곱창 #금정역 #나는솔로 #맥주
- JAVA #Thread #Runnable
- 자바 #개념 #변수 #자료형
- 정보처리기사 #2020년개정 #요구사항 분석기법 #요구사항 확인기법
- JAVA #Thread #실행제어 #상태제어 #스케줄링 #sleep #join #stop #resume #suspend #yeid #interrupt #interrupred #Deprecated
- JAVA #Map #HashMap #TreeMap #LinkedHashMap
- JAVA #CollectionFramework #Set #Treeset
- 백준 #1001번 #A-B
- 백준 #Java #10926 #??!
- JAVA #Thread #쓰레드 #자바 #sychronized #wait #notify #notifyAll #lock #잠금 #동기화 #임계영역
- NEW #BLOCKED #TERMINATED #WAITING #TIMED WAITING #RUNNABLE
- 백준 #2557 #HelloWorld! #JAVA
- key #value
- JAVA #CollectionFramework #Set #HashESet #TreeSet #LinkedHashSet
- 정보처리기사 #2020개정 #SW설계 #현행시스템
- JAVA #CollectionFramework #Set #HashSet
- JAVA #Thread #쓰레드 #자바 #우선순위 #setPriority #getPriority
- 정보처리기사 #2020년 개정 #XP #익스트림프로그래밍 #릴리즈 #이터레이션 #방법론
- 정보처리기사 #2020년 개정 #SW설계 #요구사항 확인 #애자일 #스크럼
- 10998 #A*B #AxB
- 백준 #JAVA #1000번 #Scanner #Buffered #입력함수
- JAVA #CollectionFramework #Stack #Queue #LinkedList #PriorityQueue #LIFO #FIFO
- 정보처리기사 #2020년개정 #UML #다이어그램 #정적 #동적 #구조적 #행위 #실체화 #구조 #관계 #의존 #연관 #집합 #포함 #일반화
- 포토시그니처 #신라면 #시위 #휴가
- JAVA #Thread #쓰레드 #싱글쓰레드 #멀티쓰레드 #자바
- JAVA #HashMpa #Map #Hashtable #Hashing
- 정보처리기사 #2020년개정 #요구사항확인 #1과목 #SW생명주기 #폭포수 #SW설계 #나선형 #애자일 #프로포타입
- 정보처리기사 #가용성 #2020년개정 #오픈소스 #애플리케이션 #WAS #비즈니스 #DBMS
- JAVA #CollectionFramework #List #ArrayList #LinkedList #for-each #foreach #iterator #Iterator #반복자
- Process #쓰레드
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 | 29 |
30 | 31 |