자바(일반)

제네릭은 클래스나 메서드에서 사용할 데이터 유형을 지정하지 않습니다.

사용할 때 지정할 수 있게 해주는 기술입니다.

제네릭을 사용하면 클래스 또는 메서드 재사용 가능성을 높이고 형식 안전성을 보장할 수 있습니다.

일반 클래스는 기호로 표시됩니다. < > 클래스 이름 뒤에 선언

이내 입력 < > 사용할 데이터 유형. 일반적인 예는 List 인터페이스입니다.

import java.util.ArrayList;
import java.util.List;

public class Example<T> {

    private T data;

    public Example(T data) {
        this.data = data;
    }

    public T getData() {
        return data;
    }

    public static void main(String() args) {
        // 제네릭스 클래스 사용 예시
        Example<String> example1 = new Example<>("Hello, World!");
        System.out.println(example1.getData());

        Example<Integer> example2 = new Example<>(12345);
        System.out.println(example2.getData());

        List<String> list = new ArrayList<>();
        list.add("Java");
        list.add("Python");
        list.add("C++");

        for (String str : list) {
            System.out.println(str);
        }
    }
}

위의 코드에서 Example 클래스는 일반 클래스이고 T는 사용자 정의 데이터 유형입니다.

이 클래스를 사용할 때 생성자에서 데이터 유형을 지정해야 합니다.

기본 메서드에서 Example 클래스를 사용하여 String 또는 Integer 데이터 유형의 사용을 나타냅니다.

또한 List 인터페이스를 사용한 예제도 보여주었습니다.

제네릭은 데이터 유형을 지정하여 코드 가독성을 향상시킵니다.

코드의 보안은 컴파일러가 수행하는 유형 검사에 의해 보장됩니다.

또한 코드 재사용성을 높이는 데 도움이 됩니다.