본문 바로가기

개발공부/JAVA

[인프런강의] 더 자바, 자바8 : 2강

함수형 인터페이스란?
- 함수형 인터페이스는 인터페이스 하나에 하나의 추상메소드가 있는것. 두개 있음 안됨
- @FuctionalInterface 사용(자바에서 제공해주는 어노테이션)

 

인터페이스에서 정의 할 수 있는 메소드의 형태가 다양해짐 

- abstract 생략가능
- 인터페이스 안에서 static 메소드를 정의 가능
- default 메소드를 정의 가능

 

람다표현식이란?

- 코드를 줄일 수 있음

- 함수형 인터페이스의 인스턴트를 만드는 방법으로 쓰일 수 있음

- 메소드 매개변수, 리턴타입, 변수로 만들어 사용할 수 있음

 

자바에서 함수형 프로그래밍

- 자바에서 first class object로 사용할 수 있음(?)
- 고차함수 : 함수가 함수를 매개변수로 받거나, 함수를 리턴할 수 있음
- 순수함수: 항상 같은 값을 넣었을때 같은 결과값이 나오는것이 보장되어야함(전달받은 파라미터로만)
   ex: 함수 밖에 있는 변수에 의존해서 ++ 처럼 값이 계속 바뀌는 경우 안됨

- 불변성