匿名内部类和lambda表达式


 1 package com.array.jun;
 2 
 3 /**
 4  * 
 5  * @author pengjun
 6  * @version 1.0
 7  */
 8 interface A{
 9     public void x();
10     public String y();
11 }
12 
13 interface A2{
14     public void z();
15 }
16 
17 class B{
18     public void Test1(A a){
19         System.out.println("我是B的一个方法!");
20         a.x();
21         System.out.println(a.y());
22     }
23     
24     public void Test2(A2 a){
25         System.out.println("我是B的另外一个方法!");
26         a.z();
27     }
28 }
29 
30 
31 /**
32  * 测试类
33  * @author pengjun
34  * @version 1.0
35  */
36 public class Case {
37     
38     public static void main(String[] args) {
39         // TODO Auto-generated method stub
40         B b = new B();
41         b.Test1(new A(){        //匿名内部类
42 
43             @Override
44             public void x() {
45                 // TODO Auto-generated method stub
46                 System.out.println("我是A的一个未实现方法!");
47             }
48 
49             @Override
50             public String y() {
51                 // TODO Auto-generated method stub
52                 return "我们都被实现了!";
53             }
54             
55         });
56         
57         b.Test2(() ->{                    //lambda表达式
58             System.out.println("我是Z!");
59         });
60     }
61 
62 }

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM