java/이벤트 처리

람다식

appmaster 2019. 5. 11. 17:34

람다식(lambda expression)은 이름이 없는 메소드(함수)라고 할 수 있다. 우리가 람다식을 사용하는 이유는 간결함 때문이다. 람다식을 이용하면 메소드가 필요한 곳에 간단히 메소드를 보낼 수 있다. 특히 메소드가 딱 한번만 사용되고 메소드의 길이가 짧은 경우에 유용하다. 이전 버전의 자바에서는 메소드를 객체로 만들 수 있는 방법이 없었다. 하지만 JDK8부터는 함수를 객체로 만들 수 있다.

 

import javax.swing*;
import java.awt.event.*;

public class MyFrame extends JFrame {
   private JButton button;
   private JLabel label;
   int counter = 0;
   
   public MyFrame() {
     this.setSize(400, 150);
     this.setTitle("이벤트 예제");
     
     JPanel panel = new JPanel();
     button = new JButton("증가");
     label = new JLabel("현재의 카운터 값 : "+counter);
     
     
     button.addActionListener ( e-> {
         counter++;
         labeel.setText("현재의 카운터 값 : "+counter);
     });
     //람다식을 이용하여 이벤트를 처리하고 있다. 변수 e는 이벤트를 나타낸다.
       람다식은 함수를 객체로 만들어서 메소드에 전달할 수 있다.
       
       
     panel.add(label);
     panel.add(button);
     add(panel);
     setVisible(true);
  }
  public static void main(String args[]){
     MyFrame t = new MyFrame();
     
    }
}
     
 

 

'java > 이벤트 처리' 카테고리의 다른 글

Mouse와 MouseMotion 이벤트  (0) 2019.05.22
여러 가지 이벤트 처리 방법  (0) 2019.05.11
이벤트란?  (0) 2019.05.11