[문법/자바/JAVA] 제네릭(Generic)
🔰제네릭(Generic)
제네릭은 처리해야 할 대상의 자료형에 의존하지 않는 클래스(인터페이스) 구현 방식이다.
- 제네릭 클래스는 자료형에 의존하지 않기 때문에 범용으로 사용이 가능하다.
- Java에서 지원하는 기능이므로 안전한 방법으로 사용할 수 있다.
- 제네릭 클래스는 클래스 이름 바로 뒤에
<Type>
같은 형식의 파라미터를 붙여 선언한다.
class 클래스 이름 <파라미터1, 파라미터2, ...> { ... }
interface 인터페이스 이름 <파라미터1, 파라미터2, ...> { ... }
- 위에서 나타난 것 처럼 이렇게 정의된 클래스나 인터페이스는 매개변수로 정의한 '자료형'을 전달받을 수 있다.
제네릭 클래스 구현
class GenericClassTester {
private T xyz;
GenericClass(T t) { // 생성자
this.xyz = t;
}
T getXyz() { // xyz를 반환
return xyz;
}
public static void main(String[] args) {
// 다음과 같이 파라미터에 String을 넘길 수도 있고 Integer를 넘길 수도 있다.
GenericClass<String> s = new GenericClass<String>("ABC");
GenericClass<Integer> n = new GenericClass<Integer>(15);
System.out.println(s.getXyz());
System.out.println(n.getXyz());
}
}
Author And Source
이 문제에 관하여([문법/자바/JAVA] 제네릭(Generic)), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://velog.io/@bokiri409/문법자바JAVA-제네릭Generic
저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
제네릭은 처리해야 할 대상의 자료형에 의존하지 않는 클래스(인터페이스) 구현 방식이다.
<Type>
같은 형식의 파라미터를 붙여 선언한다.class 클래스 이름 <파라미터1, 파라미터2, ...> { ... }
interface 인터페이스 이름 <파라미터1, 파라미터2, ...> { ... }
class GenericClassTester {
private T xyz;
GenericClass(T t) { // 생성자
this.xyz = t;
}
T getXyz() { // xyz를 반환
return xyz;
}
public static void main(String[] args) {
// 다음과 같이 파라미터에 String을 넘길 수도 있고 Integer를 넘길 수도 있다.
GenericClass<String> s = new GenericClass<String>("ABC");
GenericClass<Integer> n = new GenericClass<Integer>(15);
System.out.println(s.getXyz());
System.out.println(n.getXyz());
}
}
Author And Source
이 문제에 관하여([문법/자바/JAVA] 제네릭(Generic)), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@bokiri409/문법자바JAVA-제네릭Generic저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)