刚刚看到10.6关于匿名内部类的介绍,里面的代码真叫我头大,在电脑上竟然编译不过,IDE里直接标出错误了,拿10.6第一段代码来看:

public class Parcel7 {public Contents contents() {return new Contents() {private int i = 11;public int value() {return i;}};}public static void main(String[] args) {Parcel7 p = new Parcel7();Contents c = p.contents();}
}

这段代码是原书里原封不动弄过来的,在返回值为Contents的方法contents()中,语句return后面跟的是Contents类的定义,可是在Eclipse里标出了错误,大致意思是Contents不能被作为类型,我以为是IDE的问题,于是用文本编辑器写下来用命令行编译,仍旧出错,下面上图:

非常奇怪,这一节后面的代码似乎也无法编译过,具体原因尚不清楚,真叫人头大。

4月22日,我似乎找到了解决的方法,只要在外面提供一个Contents接口就可以解决问题:

interface Contents {int value();
}
public class Test {public Contents contents() {return new Contents() {private int i = 11;public int value() {return i;}};}public static void main(String[] args) {Test p = new Test();Contents c = p.contents();System.out.println(c.value());}
}

如上面代码,我提供了接口Contents,现在这个例子可以顺利编译并运行了。

《Java编程思想》10.6 匿名内部类奇怪的代码相关推荐

  1. Java编程思想 (1~10)

    [注:此博客旨在从<Java编程思想>这本书的目录结构上来检验自己的Java基础知识,只为笔记之用] 第一章 对象导论 1.万物皆对象 2.程序就是对象的集合 3.每个对象都是由其它对象所 ...

  2. Java编程思想第四版学习总结

    Java编程思想第四版学习总结 文章目录 Java编程思想第四版学习总结 第 1 章 对象入门 1.1 抽象的进步 1.2 对象的接口 1.3 实现方案的隐藏 1.4 方案的重复使用 1.5 继承:重 ...

  3. 【java】《java编程思想》 读书笔记

    之前主要用的C++的比较多,之前花了快2个月的实际认真系统全面的学习了以下java的基础语法,<java编程思想>这本书翻译水平确实不是很好,很多话读着会比较拗口.推荐读之前,先去网上搜索 ...

  4. Java编程思想读书笔记一:并发

    1. Thread.yield( )方法 当调用yield()时,即在建议具有相同优先级的其他线程可以运行了,但是注意的是,仅仅是建议,没有任何机制保证你这个建议会被采纳 .一般情况下,对于任何重要的 ...

  5. Java编程思想日志

    Thinking In Java的作者是大牛!做事要站在巨人的肩膀上有助于提高效率和开阔眼界!建议学习java的小伙伴儿有时间可以抽空了解一下,以下内容为读书笔记,比较杂乱,仅供参考,推荐阅读原著: ...

  6. Java编程思想翻译勘误

    总的来说,Java编程思想是一本好书:但是因为译者可能不懂计算机,很多地方都有严重错误. 之前和朋友抱怨过,朋友提议抱怨无用不如干点实事.遂决定边看边将自己找到的翻译错误贴出来,希望能给别人一些帮助. ...

  7. 59.java编程思想——创建窗口和程序片 Swing

    59.java编程思想--创建窗口和程序片 Swing 当我们的工作方法在AWT 中发生了巨大的改变后(如果可以回忆起很久以前,当Java 第 一次面世时SUN 公司曾声明Java 是一种" ...

  8. java编程思想--概述

    之前主要用的C++的比较多,之前花了快2个月的实际认真系统全面的学习了以下java的基础语法,<java编程思想>这本书翻译水平确实不是很好,很多话读着会比较拗口.推荐读之前,先去网上搜索 ...

  9. 《Java编程思想》读书笔记一

    很早之前就买了<Java编程思想>这本书,初学时看这本书看的云里雾里的,实在费劲,就放在一边垫桌底了.感觉这本书是适合C/C++程序员转行到Java学习的一本书,并不适合零基础的初学者去看 ...

最新文章

  1. Backup and Restore in SharePoint 2010
  2. 使用Java api 和 jni混合方式调用OpenCV
  3. String.split()方法你可能不知道的一面
  4. VuePress 添加百度统计代码
  5. html js 浏览器语言,js 判断浏览器语言的方法
  6. (STTN)Learning Joint Spatial-TemporalTransformations for Video Inpainting
  7. windows上配置新的conda env+torch
  8. 每天一道博弈论之“巴什博弈”
  9. 【旗帜识别】基于matlab GUI旗帜识别【含Matlab源码 157期】
  10. 方正伪GBK(字体名称中有GBK且字数不足21003)字体列表及使用注意事项
  11. AWG#线规及其载流能力和电阻值
  12. 让人感到惊艳的5款数据可视化大屏产品
  13. 全场景效能平台猪齿鱼 Agent——helm组件升级
  14. 列表,元组,字典,集合的特点
  15. CM4下SPI接口CAN模块配置流程
  16. [毒]QQ空间出现的伪装QQ登录窗口诈骗
  17. 【整理】嵌入式系统的各种常见外设
  18. Flink运行时架构及各部署模式下作业提交流程
  19. 使用PS快速保存多种尺寸的图标
  20. UnityShader入门精要-屏幕后处理效果 亮度饱和度对比度、边缘检测、高斯模糊、bloom效果、运动模糊

热门文章

  1. centos7安装golang
  2. c# select标签绑定枚举,并以Description做Text显示
  3. 过滤选择器——子元素过滤选择器
  4. 从缓冲上看阻塞与非阻塞socket在发送接收上的区别(转载)
  5. FPGA机器学习之stanford机器学习第三堂2
  6. (转载)MultiAnimation
  7. matlab版本之间的单双引号问题
  8. C++实现字符全排列
  9. alexnet 论文翻译
  10. [云炬创业基础笔记]第十一章创业计划书测试10