자바 기능 인터페이스

기능 인터페이스

첫째, 개념

  자바 함수 인터페이스를 의미 하나 추상적 인터페이스의 한 방법.

  기능 인터페이스, 즉 인터페이스에 적합한 함수형 프로그래밍 시나리오. 그리고 자바 프로그래밍 기능에서 반영되는 람다 때문에 적용 할 수있는 인터페이스 기능 람다 -use 인터페이스. 만 인터페이스와 하나 개의 추상 메소드를 보장함으로써, 자바 에서 람다가 원활하게 추론 할 수있다.

   : " 문법적는 " 더 편리한 사용을 의미하지만, 원리는 동일한 코드 구문입니다. 모음 횡단 예를 들어, 를위한 각 구문을, 사실 기본 원칙은 반복자 남아 달성이다 " 문법적 " . 응용 프로그램 수준에 관한에서 자바 에서 람다는 익명의 내부로 간주 될 수
클래스 " 문법 설탕 ", 하지만 모두 원칙적으로 다르다.

둘째, 형식

  그냥 인터페이스와 하나 개의 추상적 인 방법이 될 수 있는지 확인합니다.

  구문 :

수정 인터페이스 이름 { 
    공공 추상 메소드의 리턴 타입 이름 (선택적 매개 변수 정보); 
    // 다른 비 추상 메소드의 내용 
}

    함수 인터페이스 정의가 매우 간단되도록 추상 공개 추상적 방식 간의 인터페이스 때문에, 생략 될 수있다 :

공중 인터페이스 MyFunctionalInterface { 
    공극 MyMethod라는 (); 
}

세 @ FunctionalInterface 코멘트

  @FunctionalInterface : 그리고 새로운 주석 기능 인터페이스의 도입 전문 @Override 유사한, Java8의 역할을 지적한다.

  주석은 인터페이스를 정의 할 수 있습니다 :

@FunctionalInterface 
공중 인터페이스 MyFunctionalInterface { 
    ) (공극 MyMethod라는 단계; 
}

  인터페이스를 정의하는이 주석을 사용하면, 컴파일러는, 그렇지 않으면 오류가 발생하지, 인터페이스는 오직 하나의 추상 메소드를 가지고 있는지 여부를 확인하도록 강요 될 것이다.

  만큼 여전히 기능 인터페이스 기능 인터페이스의 정의, 등, 심지어는 음의 응용 프로그램없이, 그 주 모두 같은를 사용합니다.

넷째, 사용자 지정 함수 인터페이스

  정의한 MyFunctionInterface 함수 인터페이스를 들어, 전형적인 시나리오는 메소드의 파라미터로서 사용된다 :

. (1)  공용  클래스 DemoFunctionalInterface {
 2          // 메소드 파라미터에 정의 된 자기 함수 인터페이스를 사용 
. 3          개인  정적  무효 해봐요 (인터 MyFunctionalInterface) {
 . 4              inter.myMethod (); // 함수 인터페이스 정의 메소드를 호출 
5.          }
 6.  
7.          공용  정적  무효 메인 (문자열 []에 args) {
 8.              // 인터페이스를 사용하는 함수를 호출 
9.              해봐요 (() ->에서 System.out.println ( "람다 그것을 실행!" ));
 10          }
 11      }

 

추천

출처www.cnblogs.com/niujifei/p/11614081.html