//람다
//자바의 함수형 프로그램인 람다 표현식은 인터페이스 사용하는 익명내부클래스의 또다른 표현식
//하지만 인터페이스가 단 하나의 추상메서드만 갖고 있어야 한다 그리서 사용 빈도 낮음
//추상메서드
interface Orange{
public void write();
//public void play(); 람다식 표현으로는 추상메서드 하나만 가능해서 두개 불가능
}
public class Lamda_04 {
//익명내부클래스 이용해서 오버라이딩 하기
public void abstMethod1() {
Orange or=new Orange() {
@Override
public void write() {
System.out.println("익명내부클래스의 오렌지 입니다");
}
};
//출력
or.write();
}
//람다식으로 오버라이딩 하기
public void abstMethod2() {
Orange or=()->System.out.println("나는 람다식 오렌지 입니다");
or.write();
System.out.println("안에 여러줄 코드할 때");
Orange or2=()->{
System.out.println("나는 여러 줄의 ");
System.out.println("람다식 오렌지");
};
//출력
or2.write();
}
public static void main(String[] args) {
Lamda_04 ex=new Lamda_04();
ex.abstMethod1();
System.out.println("--------------------------");
//람다식 출력
ex.abstMethod2();
}
}
//결과
익명내부클래스의 오렌지 입니다
--------------------------
나는 람다식 오렌지 입니다
안에 여러줄 코드할 때
나는 여러 줄의
람다식 오렌지
'JAVA' 카테고리의 다른 글
210902_오라클 클라우드를 이클립스에 연결 (0) | 2021.09.02 |
---|---|
210826_Local IP+Local name (0) | 2021.08.26 |
210826_Thread (0) | 2021.08.26 |
210823_Swing(버튼)+image+Arrays (0) | 2021.08.23 |
210823_Swing(버튼)+image+Null (0) | 2021.08.23 |