Java

자바 step10 - interface(@FunctionalInterface) 함수 모양으로 사용할 인터페이스에 붙이는 어노테이션

코딩탕탕 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);
	}
}

매개변수가 있으므로 인자값에 따라 계산값을 리턴한다.