[20-05-17][Thinking in Java 22]Java Inner Class 6 - Anonymous Inner Class 1
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了[20-05-17][Thinking in Java 22]Java Inner Class 6 - Anonymous Inner Class 1,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1375字,纯文字阅读大概需要2分钟。
内容图文
![[20-05-17][Thinking in Java 22]Java Inner Class 6 - Anonymous Inner Class 1](/upload/InfoBanner/zyjiaocheng/632/82aae9f3ec8d4f7a8314c7a3310859c5.jpg)
1 package test_15_1; 2 3 public interface Contents { 4 5 int value(); 6 }
1 package test_15_1; 2 3 public class Wrapping { 4 5 private int i; 6 7 public Wrapping(int x) { 8 i = x; 9 } 10 11 public int value() { 12 return i; 13 } 14 }
1 package test_15_1; 2 3 public class Outer { 4 5 public Contents contents() { 6 // 创建一个继承自Contents的匿名类的对象,通过new表达式返回的引用被自动向上转型为Contents的引用 7 return new Contents() { 8 private int i = 1; 9 10 @Override 11 public int value() { 12 return i; 13 } 14 }; // 必须有分号,表示return表达式结束 15 } 16 17 public Wrapping wrapping(int x) { 18 // 如果需要一个带参的构造器,只需要传递适当的参数给基类的构造器即可 19 // 尽管Wrapping只是一个具有具体实现的普通类,但还是能被导出类当作公共“接口”使用 20 return new Wrapping(x) { 21 22 @Override 23 public int value() { 24 return super.value() * 100; 25 } 26 }; 27 } 28 29 public static void main(String[] args) { 30 Outer o = new Outer(); 31 Contents c = o.contents(); 32 Wrapping w = o.wrapping(10); 33 34 System.out.println(c.value()); 35 System.out.println(w.value()); 36 } 37 }
内容总结
以上是互联网集市为您收集整理的[20-05-17][Thinking in Java 22]Java Inner Class 6 - Anonymous Inner Class 1全部内容,希望文章能够帮你解决[20-05-17][Thinking in Java 22]Java Inner Class 6 - Anonymous Inner Class 1所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。
来源:【匿名】