public static void main(String[] args) {
JFrame jframe = new JFrame("My JFrame");
JButton jButton = new JButton("My JButton");
///表达式写法:如果有多行就加中括号,一行不用加
jButton.addActionListener(event -> {
System.out.println("Button Pressed!");
System.out.println("hello world");
System.out.println("executed");
});
jframe.add(jButton);
jframe.pack();
jframe.setVisible(true);
jframe.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
/**
*lambda表达式基本结构:
*{param1,param2,param3}->{}
*
*
*/
...
package rm;
@FunctionalInterface
public interface Myinterface {
void test();
String toString();
//如果一个接口声明了抽象方法,但是抽象方法重写父类方法,
// 是不会向接口数量加一的,。
}
class Test2{
public void myTest(Myinterface my){
System.out.println(1);
my.test();
System.out.println(2);
}
public static void main(String[] args) {
Test2 test2 = new Test2();
test2.myTest(()->{
System.out.println("mytest");
});
}
}
....