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"); }); } }
....