하루하루 살아남기

[ Java / 자바 ] 함수형 인터페이스 본문

개발/Java

[ Java / 자바 ] 함수형 인터페이스

막막이 2021. 4. 10. 00:58
반응형

함수형 인터페이스

 

자바 8부터 제공하는 함수형 인터페이스는 단 한개의 추상 메서드를 갖고 있는 인터페이스를 말합니다.

@FunctionalInterface 를 붙여서 함수형인터페이스임을 표현합니다. 만약 두개 이상의 추상메서드가 있으면 오류가 발생하기 떄문에 함수형 인터페이스의 규칙을 잘 지켜서 만들어야합니다.

 

함수형 인터페이스로 만들어진 변수에는 값을 갖지 않고 메서드처럼 사용하게 됩니다.

이를 '함수형 프로그래밍' 한다고 합니다. 예를 들어 보겠습니다.

 

    public class Functional {

        @FunctionalInterface
        interface FunctionalInterfaceTest {
            public abstract void test();
        }

    }

 

이제 이걸 호출하는 쪽을 만들어 보겠습니다.

 

        public static void main(String[] args) {

            FunctionalInterfaceTest functionalInterfaceTest = () -> System.out.println("함수형 프로그래밍");
            functionalInterfaceTest.test();

        }

 

실행결과

 

3번째 라인에 사용된 문법은 람다식입니다.

람다식에 대해서는 다음에 작성하도록 하겠습니다.

간단하게 일회성으로 함수를 만들어 사용한다고 생각하시면 되겠습니다.

 

test() 메서드는 반환값이 void로 명시했으므로 println으로 결과만을 출력합니다.

만약 숫자를 반환받고싶다면 인터페이스에 선언시에 int로 명시해야 합니다.

728x90
반응형

'개발 > Java' 카테고리의 다른 글

[Java / 자바] 람다식  (0) 2021.04.12
[Java / 자바 ] 사용자 정의 예외  (0) 2021.04.03
[Java / 자바] 예외 발생시키기  (0) 2021.04.03
[Java / 자바] Throws  (0) 2021.04.01
[Java / 자바] 예외처리  (0) 2021.04.01
Comments