On Java 8
XIIV13
这个作者很懒,什么都没留下…
展开
-
《On Java 8》笔记 11.第十一章-内部类**
链接外部类 当某个外围类的对象创建了一个内部类对象时,此内部类对象必定会秘密地捕获一个指向那个外围类对象的引用。然后,在你访问此外围类的成员时,就是用那个引用来选择外围类的成员。幸运的是,编译器会帮你处理所有的细节,但你现在可以看到:内部类的对象只能在与其外围类的对象相关联的情况下才能被创建(就像你应该看到的,内部类是非 static 类时)。构建内部类对象时,需要一个指向其外围类对象的引用,如果...原创 2019-10-15 13:18:16 · 204 阅读 · 0 评论 -
《On Java 8》笔记 第二十章-泛型##
泛型方法原创 2019-10-15 11:17:22 · 134 阅读 · 0 评论 -
《On Java 8》笔记 附录-集合主题**
可以通过 entrySet() 连接到这些方法,该方法会生成一个由 Map.Entry 对象组成的 Set 。这个 Set 包含 stream() 和 parallelStream() 方法。 FunctionalMap.java import java.util.*; import java.util.stream.*; import java.util.concurrent.*; impo...原创 2019-10-15 11:15:25 · 152 阅读 · 0 评论 -
《On Java 8》笔记 第十五章-异常**
可以为异常类创建一个接受字符串参数的构造器,还可以更进一步自定义异常,比如加入额外的构造器和成员。 Java 鼓励人们把方法可能会抛出的异常告知使用此方法的客户端程序员。这是种优雅的做法,它使得调用者能确切知道写什么样的代码可以捕获所有潜在的异常。当然,如果提供了源代码,客户端程序员可以在源代码中查找 throw 语句来获知相关信息,然而程序库通常并不与源代码一起发布。为了预防这样的问题,Jav...原创 2019-10-15 11:15:03 · 153 阅读 · 0 评论 -
《On Java 8》笔记 第十九章-类型信息##
RTTI import java.util.stream.*; abstract class Shape { void draw() { System.out.println(this + ".draw()"); } @Override public abstract String toString(); } class Circle extends Shape { ...原创 2019-10-05 04:58:32 · 151 阅读 · 0 评论 -
《On Java 8》笔记 第九章-多态
初始化的实际过程是: 在所有事发生前,分配给对象的存储空间会被初始化为二进制 0。 如前所述调用基类构造器。此时调用覆写后的 draw() 方法(是的,在调用 RoundGraph 构造器之前调用),由步骤 1 可知,radius 的值为 0。 按声明顺序初始化成员。 最终调用派生类的构造器。 ...原创 2019-10-04 22:45:28 · 179 阅读 · 0 评论 -
《On Java 8》笔记 第十二章-集合
原文链接:https://lingcoder.gitee.io/onjava8/#/book/12-Collections?id=%e9%9b%86%e5%90%88set 总结 数组将数字索引与对象相关联。它保存类型明确的对象,因此在查找对象时不必对结果做类型转换。它可以是多维的,可以保存基本类型的数据。虽然可以在运行时创建数组,但是一旦创建数组,就无法更改数组的大小。 Collectio...原创 2019-09-24 08:23:17 · 207 阅读 · 0 评论 -
《On Java 8》笔记 附录-编程指南
设计 优雅总是会有回报。 从短期来看,似乎需要更长的时间才能找到一个真正优雅的问题解决方案,但是当该解决方案第一次应用并能轻松适应新情况,而不需要数小时,数天或数月的挣扎时,你会看到奖励(即使没有人可以测量它们)。它不仅为你提供了一个更容易构建和调试的程序,而且它也更容易理解和维护,这也正是经济价值所在。这一点可以通过一些经验来理解,因为当你想要使一段代码变得优雅时,你可能看起来效率不是很高。抵...原创 2019-09-23 17:05:04 · 256 阅读 · 0 评论 -
《On Java 8》笔记-第十四章 流式编程**
-中间操作 map() 会获取流中的所有元素,并且对流中元素应用操作从而产生新的元素,并将其传递到后续的流中。通常 map() 会获取对象并产生新的对象,但在这里产生了特殊的用于数值类型的流。例如,mapToInt() 方法将一个对象流(object stream)转换成为包含整型数字的 IntStream。同样,针对 Float 和 Double 也有类似名字的操作。 ...原创 2019-09-23 10:57:16 · 159 阅读 · 0 评论 -
《On Java 8》笔记-第十三章 函数式编程**
第十三章 函数式编程 总结 用一个接口对象去应用绑定一个类的方法(接口方法和类方法有相同的辨识符) 用 接口.方法(参数…)的方法调用,或者获取返回值 RecursiveFibonacci.java public class RecursiveFibonacci { IntCall fib; RecursiveFibonacci() { fib = n -> n == ...原创 2019-09-20 16:24:28 · 196 阅读 · 0 评论