From 577142bec51968501a7c6a49dc0dd66758bc558b Mon Sep 17 00:00:00 2001 From: sjsdfg <736777445@qq.com> Date: Fri, 5 Apr 2019 22:51:52 +0800 Subject: [PATCH] =?UTF-8?q?update=2033.=20=E4=BC=98=E5=85=88=E8=80=83?= =?UTF-8?q?=E8=99=91=E7=B1=BB=E5=9E=8B=E5=AE=89=E5=85=A8=E7=9A=84=E5=BC=82?= =?UTF-8?q?=E6=9E=84=E5=AE=B9=E5=99=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- docs/notes/33. 优先考虑类型安全的异构容器.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/notes/33. 优先考虑类型安全的异构容器.md b/docs/notes/33. 优先考虑类型安全的异构容器.md index 2be7d3b..e6bfbd7 100644 --- a/docs/notes/33. 优先考虑类型安全的异构容器.md +++ b/docs/notes/33. 优先考虑类型安全的异构容器.md @@ -6,7 +6,7 @@   作为这种方法的一个简单示例,请考虑一个 `Favorites` 类,它允许其客户端保存和检索任意多种类型的 favorite 实例。 该类型的 `Class` 对象将扮演参数化键的一部分。其原因是这 `Class` 类是泛型的。 类的类型从字面上来说不是简单的 `Class`,而是 `Class`。 例如,`String.class` 的类型为 `Class`,`Integer.class` 的类型为 `Class`。 当在方法中传递字面类传递编译时和运行时类型信息时,它被称为类型令牌(type token)[Bracha04]。 -  `Favorites` 类的 `API` 很简单。 它看起来就像一个简单 `Map` 类,除了该键是参数化的以外。 客户端在设置和获取 favorites 实例时呈现一个 `Class` 对象。 这里是 API: +  `Favorites` 类的 `API` 很简单。 它看起来就像一个简单 `Map` 类,除了该键是参数化的以外。 客户端在设置和获取 favorites 实例时呈现一个 `Class` 对象。 如下是 API: ```java // Typesafe heterogeneous container pattern - API @@ -34,7 +34,7 @@ public static void main(String[] args) { } ``` -  正如你所期望的,这个程序打印 `Java cafebabe Favorites`。 请注意,顺便说一下,`Java` 的 `printf` 方法与 C 语言的不同之处在于,应该使用cn,而在 C 中使用\n。%n 生成适用的特定于平台的行分隔符,该分隔符在很多但不是所有平台上都是\n。 +  正如你所期望的,这个程序打印 `Java cafebabe Favorites`。 请注意,顺便说一下,`Java` 的 `printf` 方法与 C 语言的不同之处在于,你应该在 C 中使用 \n 的地方改用 %n。%n 用于生成适用于特定平台的行分隔符,在大多数平台上面的值为 \n,但并不是所有平台的分隔符都为 \n。   `Favorites` 实例是类型安全的:当你请求一个字符串时它永远不会返回一个整数。 它也是异构的:与普通 Map 不同,所有的键都是不同的类型。 因此,我们将 `Favorites` 称为类型安全异构容器(typesafe heterogeneous container)。