- dd
- dd
- [0306] 1-1. 함수형 인터페이스 소개와 표현식 소개
- 함수형 인터페이스란...?
- 람다표현식
- first class object / pure function / higher order function /....
- => 함수형 프로그래밍을 지향한다면 잘 이해하고 써야한다. : 함수형 프로그래밍이라고 짜 놨는데 함수형 프로그래밍이라고 볼수 없는 코드를 짜고 있는 것일 수도 있다.
- [0306] 1-2. JAVA에서 기본으로 제공하는 함수형 Interface
- 함수형 Interface 중 java.lang.function package에서 기본으로 제공해주는 것들이 있다.
- 참고)https://docs.oracle.com/javase/8/docs/api/java/util/function/package-summary.html
- => 기본적으로 사용법들만 익힌다. / 이름들을 보고 대충 어떤 기능인지 파악한다. / 필요할 때 찾아쓴다.
- 문서를 잘 읽는 습관을 들여야 한다.
- [0307] 1-3. Lamda
- 람다란..? (param0->{body}
- 인자들 / 바디
- 람다표현식의 특징
- 로컬변수캡쳐 : final 혹은 effective final인 로컬 변수만 Lamda가 참조가능!
- 람다는 쉐도윙하지 않는다!
- 쉐도윙 : Scope밖의 변수와 안의 변수의 이름이 같을 때 Scope 안의 변수가 우선권을 갖는것
- => 사실상 Lamda에서 로컬변수는 (effective)final 만 사용가능 하기 때문에 람다와 람다를 싸고있는 클래스의 Scope은 같다!
- Local class(inner class) / 익명클래스(annonymous class) VS Lamda 의 차이
- [0308] 1-4. Method Reference(::)
- Method Reference란...? 람다 표현식이 단 하나의 method를 호출할 때, 간결하게 표현하는 '방법'
- Method Reference방법
- Static Method 참조
- Type :: StaticMethod
- 특정 객체의 인스턴스 Method 참조
- 객체 :: InstanceMethod
- 생성자 참조
- Type :: new
- 임의 객체의 인스턴스 Method 참조
- Type :: instanceMethod
- Static Method 참조