프로그램/Chat GPT

Generic: 재사용 가능한 코드 작성

amanda_ai 2023. 5. 24. 16:32
반응형

틀림없이! Java의 제네릭을 사용하면 다른 데이터 유형과 함께 작동할 수 있는 재사용 가능한 코드를 작성할 수 있습니다. 다음은 제네릭을 사용하여 제네릭 클래스 및 메서드를 만드는 방법의 예입니다.

자바
public class Box<T> { private T content; public Box(T content) { this.content = content; } public T getContent() { return content; } public void setContent(T content) { this.content = content; } } public class Main { public static void main(String[] args) { // Create a Box of Integer Box<Integer> intBox = new Box<>(10); intBox.setContent(20); System.out.println("Integer value: " + intBox.getContent()); // Create a Box of String Box<String> stringBox = new Box<>("Hello"); stringBox.setContent("World"); System.out.println("String value: " + stringBox.getContent()); // Create a Box of Double Box<Double> doubleBox = new Box<>(3.14); doubleBox.setContent(2.71); System.out.println("Double value: " + doubleBox.getContent()); } }

위의 예에서는 제네릭 클래스를 정의합니다 Box<T>. type 매개변수는 T클래스의 인스턴스를 생성할 때 사용될 실제 유형에 대한 자리 표시자를 나타냅니다 Box. 클래스 내부에는 content유형의 전용 필드 T와 콘텐츠에 액세스하고 수정하는 getter/setter 메서드가 있습니다.

이 메서드에서는 , 및 와 같은 다양한 유형 main의 인스턴스를 만듭니다 . 유형 매개변수는 인스턴스를 생성할 때 지정되며(예: ) 컴파일러가 유형 안전성을 강화하고 적절한 유형 검사를 수행할 수 있도록 합니다.BoxIntegerStringDoubleBox<Integer>

제네릭을 사용하면 Box클래스를 한 번 작성하고 코드를 복제하지 않고 다른 유형으로 재사용할 수 있습니다. 이렇게 하면 코드가 더 유연해지고 유형 관련 오류를 방지할 수 있습니다.

반응형