>Java >java지도 시간 >항목 표준 기능 인터페이스 사용을 선호합니다.

항목 표준 기능 인터페이스 사용을 선호합니다.

WBOY
WBOY원래의
2024-07-25 10:47:31649검색

Item  Prefira o uso das interfaces funcionais padrão

람다를 사용한 API의 진화: Java에 람다가 도입되면서 템플릿 메서드 패턴을 피하고 정적 메서드를 선호하는 등 API 작성 방식이 변경되었습니다. 함수 객체를 허용하는 팩토리 또는 생성자.

LinkedHashMap 예: 캐시 제어를 위해 RemoveEldestEntry 메소드를 재정의하는 대신 BiPredicate 기능 인터페이스를 사용하여 정적 팩터리 또는 함수 객체가 있는 생성자를 사용하는 것이 더 현대적입니다.

표준 기능 인터페이스 사용: java.util.function 패키지는 API를 더 쉽게 이해하고 상호 운용성을 향상시키기 위해 사용자 정의 인터페이스보다 선호되는 광범위한 표준 기능 인터페이스 컬렉션을 제공합니다.

주요 기능 인터페이스:

  • UnaryOperator: T 유형의 함수를 T에 적용합니다.
  • BinaryOperator: T 유형의 두 인수 함수를 T에 적용합니다.
  • 조건자: 인수를 테스트하고 부울을 반환합니다.
  • 함수: T 유형의 함수를 R에 적용합니다.
  • 공급자: 인수 없이 T 유형의 값을 제공합니다.
  • 소비자: 반환 없이 T 유형의 인수를 사용합니다.

기본 유형을 위한 기능적 인터페이스: IntPredicate 및 LongBinaryOperator와 같은 기본 유형(int, long, double)에 대한 6가지 기본 인터페이스의 변형이 있습니다.

사용자 정의 기능 인터페이스를 만들어야 하는 경우:
표준 인터페이스가 요구 사항을 충족하지 못하는 경우.
설명적인 이름이나 강력한 계약이 필요한 경우
인터페이스가 사용자 정의 기본 메소드의 이점을 누릴 수 있는 경우.
@FunctionalInterface 주석 사용: 인터페이스가 람다를 지원하도록 설계되어 추상 메소드가 하나만 있음을 나타냅니다.

모호한 오버로드 방지: 모호함을 피하기 위해 동일한 인수 위치에서 다양한 기능 인터페이스를 허용하는 오버로드가 많은 메서드를 생성하지 마세요.

**결론: **최신 API 설계에서는 람다와 기능적 인터페이스를 고려해야 합니다. 일반적으로 사용자 정의 인터페이스가 필요한 특별한 경우를 제외하고는 기본 java.util.function 인터페이스를 사용하는 것이 좋습니다.

위 내용은 항목 표준 기능 인터페이스 사용을 선호합니다.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
이전 기사:삭제 메소드 구현다음 기사:삭제 메소드 구현