티스토리 뷰

java,web study/3주차 (7월 15일 ~21일)

제네릭

doublemetal 2013. 7. 16. 23:23


컴파일할 때 데이터 타입을 확정짓지 않고 실행 시 데이터 타입을 확정짓는 것을 의미
다른 언어의 템플릿 기능과 유사미지정 자료형을 사용

컴파일 시에 타입이 결정되어 보다 안전한 프로그래밍 가능
개발 시 다운캐스팅(타입 캐스팅) 절차 불필요
런타임 타입 충돌 문제 방지

ClassCastException 방지




class Generic<T> {

private T data[];


public Generic(T... n) {

data = n; // 미확정자료형인 T타입의 n을 인자로 받아 data에 대입

}


public void disp() {

for (T i : data) {

System.out.print(i+"\t");

}

}

}


public class GenericMain {


public static void main(String[] args) {

// TODO Auto-generated method stub

Generic<String> obj1 = new Generic<String>("Hello", "Java");

Generic<String> obj2 = new Generic<String>("Hello", "Java", "Test");

Generic<Integer> obj3 = new Generic<Integer>(1, 2, 3);

Generic<Character> obj4 = new Generic<Character>('4');

// String형과 Integer 타입의 인자를 갖는 Generic 객체 생성


obj1.disp();

obj2.disp();

obj3.disp();

obj4.disp();

}

}



Hello Java Hello Java Test 1 2 3 4




'java,web study > 3주차 (7월 15일 ~21일)' 카테고리의 다른 글

깜박이는 레이블  (0) 2013.07.17
Label  (0) 2013.07.17
빠른 열거  (0) 2013.07.16
String Format  (0) 2013.07.16
String의 대입 연산  (0) 2013.07.16
댓글
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/04   »
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
글 보관함