-
자바 step10 - interface(@FunctionalInterface) 함수 모양으로 사용할 인터페이스에 붙이는 어노테이션Java 2022. 11. 6. 15:20
package test.mypac; /* * 함수 모양으로 사용할 인터페이스에 붙이는 어노테이션 * - 추상메소드가 1개인 인페이스 * - 추상 메소드의 갯수가 1개로 강제된다. */ @FunctionalInterface public interface Calc { // 인자로 숫자 2개를 전달 받아서 어떠한 연산을 한 후 결과를 리턴해주는 추상 메소드 public double exec(double num1, double num2); }
* 함수 모양으로 사용할 인터페이스에 붙이는 어노테이션이다.
* - 추상메소드가 1개인 인페이스
* - 추상 메소드의 갯수가 1개로 강제된다.package test.main; import test.mypac.Calc; public class MainClass05 { public static void main(String[] args) { Calc plus=(a, b)->{ return a+b; }; Calc minus=(a, b)->{ return a-b; }; Calc multi=(a, b) -> a*b; Calc divide=(a, b) -> a/b; double result=plus.exec(10, 20); double result2=minus.exec(10, 20); double result3=multi.exec(10, 20); double result4=divide.exec(10, 20); } }
매개변수가 있으므로 인자값에 따라 계산값을 리턴한다.
'Java' 카테고리의 다른 글
자바 step12 - UtilClass(ArrayList 객체) (0) 2022.11.07 자바 step11 - GenericClass (0) 2022.11.07 자바 step10 - interface(자바의 람다함수, override) (0) 2022.11.06 자바 step10 - interface(implements, orverride, final 예약어) (0) 2022.11.06 자바 step9 - AbstractClass(override) (0) 2022.11.06