Java 함수 제네릭을 사용하면 상한 및 하한을 설정할 수 있습니다. 상한(확장)은 함수에서 허용하거나 반환하는 데이터 유형이 f4284c1b81ca840b0b30b49340d6aa19와 같이 지정된 유형의 하위 유형이어야 함을 지정합니다. 하한(super)은 함수에 의해 허용되거나 반환되는 데이터 유형이 8991fee22ef165e6bc8a2922b920a06c와 같이 지정된 유형의 상위 유형이어야 함을 지정합니다. 제네릭을 사용하면 코드 재사용성과 보안이 향상됩니다.
Java 함수 제네릭의 상한 및 하한
함수 제네릭은 함수가 처리할 수 있는 데이터 유형을 컴파일 타임에 지정할 수 있는 강력한 메커니즘입니다. Java의 제네릭은 함수에서 허용하거나 반환하는 데이터 유형을 제한하기 위해 상한 및 하한을 선언할 수 있습니다.
상한
상한은 함수가 허용하거나 반환할 수 있는 데이터 유형이 지정된 유형의 하위 유형이어야 함을 지정합니다. 확장 키워드를 사용하여 지정됩니다. 예:
public <T extends Number> void printNumber(T number) { System.out.println(number); }
이 함수는 Number 유형 또는 해당 하위 클래스(예: Integer, Double, Float)만 허용합니다.
하한(Lower Bound)
하한은 함수가 허용하거나 반환할 수 있는 데이터 유형이 지정된 유형의 상위 유형이어야 함을 지정합니다. super 키워드를 사용하여 지정됩니다. 예:
public <T super Number> void sumNumbers(List<T> numbers) { double sum = 0; for (T number : numbers) { sum += number.doubleValue(); } }
이 함수는 숫자 또는 Lista87fdacec66f0909fc0757c19f2d2b1d 또는 Listc0f559cc8d56b43654fcbe4aa9df7b4a와 같은 상위 유형 목록을 허용할 수 있습니다.
실용 사례
두 숫자를 비교하는 함수가 있다고 가정해 보겠습니다.
public static <T extends Comparable<T>> int compare(T obj1, T obj2) { return obj1.compareTo(obj2); }
이 함수를 사용하여 Comparable 인터페이스를 구현하는 모든 유형을 비교할 수 있습니다. 예:
int result = compare(10, 20); // result 为 -1
메서드 사용
제네릭 사용 상한과 하한을 지정할 때 다음 사항에 유의하세요.
위 내용은 Java 함수 제네릭의 상한과 하한은 무엇입니까? 사용하는 방법?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!