# 评估 # 第 1 章-Java 入门 12 1. c) Java 开发工具包 2. b) Java 类库 3. d) Java 标准版 4. b) 集成开发环境 5. a) 项目建设,b)项目配置,c)项目文件 6. a) 布尔值,b)数字 7. a) `long`,c)`short`,d)`byte` 8. d) 值表示 9. a) `\\`,b)`2_0`,c)`2__0f`,d)`\f` 10. a) `%`、c)`&`、d)`->` 11. a) 0 12. b) 否,否 13. d) 4 14. c) 编译错误 15. b) 2 16. a、c、d 17. d) `20 -1` 18. c) `x`值在 11 范围内 19. c) 结果为 32 20. a) 可以声明变量,b)可以指定变量 21. b) 选择语句,d)增量语句 # 第 2 章 Java 面向对象编程(OOP) 1. a、d 2. b、c、d 3. a、b、c 4. a、c、d 5. d 6. c、d 7. a、b 8. b、d 9. d 10. b 11. a、c 12. b、c、d 13. a、b 14. b、c 15. b、c、d 16. b、c 17. c 18. a、b、c 19. b、c、d 20. a、c 21. a、c、d # 第 3 章 Java 基础 1. a、d 2. c、d 3. a、b、d 4. a、c、d 5. a、c 6. a、b、d 7. a、b、c、d 8. c、d 9. d 10. c 11. b 12. c # 第 4 章-异常处理 1. a、b、c 2. b 3. c 4. a、b、c、d 5. 1 6. a、c 7. d # 第 5 章-字符串、输入/输出和文件 1. b 2. c 3. b 4. 1 5. d 6. a、c、d 7. c 8. d 9. a、b、c 10. c、d(注意使用`mkdir()`方法代替`mkdirs()`) # 第 6 章-数据结构、泛型和流行实用程序 1. d 2. b、d 3. a、b、c、d 4. a、b、c、d 5. a、b、d 6. a、b、c 7. c 8. a、b、c、d 9. b、d 10. b 11. b、c 12. 1 13. c 14. d 15. b 16. c 17. 1 18. b 19. c # 第 7 章 Java 标准和外部库 1. a、b、c 2. a、b、d 3. b、c 4. b、d 5. a、c 6. a、b、c、d 7. b、c、d 8. b、c 9. b 10. c、d 11. a、c 12. b、d 13. a、d 14. b、c、d 15. a、b、d 16. b、d # 第 8 章-多线程和并发处理 1. a、c、d 2. b、c、d 3. 1 4. a、c、d 5. b、c、d 6. a、b、c、d 7. c、d 8. a、b、c 9. b、c 10. b、c、d 11. a、b、c 12. b、c 13. b、c # 第 9 章-JVM 结构和垃圾收集 1. b、d 2. c 3. d 4. b、c 5. a、d 6. c 7. a、b、c、d 8. a、c、d 9. b、d 10. a、b、c、d 11. 1 12. a、b、c 13. a、c 14. a、c、d 15. b、d # 第 10 章-管理数据库中的数据 1. c 2. a、d 3. b、c、d 4. a、b、c、d 5. a、b、c 6. a、d 7. a、b、c 8. a、c 9. a、c、d 10. a、b 11. a、d 12. a、b、d 13. a、b、c # 第 11 章-网络编程 1. 正确答案可能包括 FTP、SMTP、HTTP、HTTPS、WebSocket、SSH、Telnet、LDAP、DNS 或其他一些协议 2. 正确的答案可能包括 UDP、TCP、SCTP、DCCP 或其他协议 3. `java.net.http` 4. UDP 协议 5. 是的 6. `java.net` 7. 传输控制协议 8. 它们是同义词 9. 按源的 IP 地址和端口以及目标的 IP 地址和端口 10. `ServerSocket`无需客户端运行即可使用。它只是在指定的端口上“监听” 11. UDP 协议 12. 传输控制协议 13. 正确答案可能包括 HTTP、HTTPS、Telnet、FTP 或 SMTP 14. a、c、d 15. 它们是同义词 16. 它们是同义词 17. `/something/something?par=42` 18. 正确答案可能包括二进制格式、标头压缩、多路复用或推送功能 19. `java.net.http.HttpClient` 20. `java.net.http.WebSocket` 21. 没有区别 22. `java.util.concurrent.CompletableFuture` # 第 12 章-Java GUI 编程 1. 舞台 2. 节点 3. 应用 4. `void start(Stage pm)` 5. `static void launch(String... args)` 6. `--module-path`和`--add-modules` 7. `void stop()` 8. `WebView` 9. `Media MediaPlayer MediaView` 10. `--add-exports` 11. 以下列表中的任意五个:`Blend`、`Bloom`、`BoxBlur`、`ColorAdjust`、`DisplacementMap`、`DropShadow`、`Glow`、`InnerShadow`、`Lighting`、`MotionBlur`、`PerspectiveTransform`、`Reflection`、`ShadowTone`、`SepiaTone` # 第 13 章-函数式编程 1. c 2. a、d 3. 1 4. `void` 5. 1 6. `boolean` 7. 没有 8. `T` 9. 1 10. `R` 11. 封闭上下文 12. `Location::methodName` # 第 14 章-Java 标准流 1. a、b 2. `of()`无参数产生空流 3. `java.util.Set` 4. 135 5. 42 6. 2121 7. 不是,但是它扩展了函数式接口`Consumer`,可以这样传递 8. 没有 9. 3 10. 1.5 11. `"42, X, a"` 12. 编译错误,因为`peek()`不能返回任何内容 13. 2 14. 另一个目标 15. `"a"` 16. 1 17. `filter()`、`map()`和`flatMap()`中的任何一个 18. `distinct()`、`limit()`、`sorted()`、`reduce()`和`collect()`中的任何一个 # 第 15 章-反应式编程 1. a、b、c 2. 是的 3. 无阻塞输入/输出 4. 不 5. 无功延伸 6. `java.util.concurrent` 7. a、d 8. 阻塞运算符名称以“阻塞”开头 9. 一个热的可观测物体以它自己的速度发射值。一个冷的可观测值在上一个值到达终端操作符之后发出下一个值 10. 可观察到的停止发射值,管道停止运行 11. a、c、d 12. 例如,以下任意两个:`buffer()`、`flatMap()`、`groupBy()`、`map()`、`scan()`、`window()` 13. 例如,以下任意两个:`debounce()`、`distinct()`、`elementAt(long n)`、`filter()`、`firstElement()`、`ignoreElements()`、`lastElement()`、`sample()`、`skip()`、`take()` 14. 删除过多的值,获取最新值,使用缓冲区 15. `subscribeOn()``observeOn()``fromFuture()` # 第 16 章微服务 1. a、c 2. 是的 3. 与传统应用程序的方式相同,而且它们通常有自己的通信方式(例如,使用事件总线) 4. 列表中的任意两个:Akka,Dropwizard,Jodd,Lightbend Lagom,Ninja,Spotify Apollo,Vert.x。 5. 实现接口`io.vertx.core.Verticle`的类 6. `Send`只向一个注册地址的接收器发送消息;`publish`向所有注册地址相同的接收器发送消息 7. 它使用循环算法 8. 是的 9. # 第 17 章-Java 微基准线束 1. b、c、d 2. 将对 JMH 的依赖添加到项目中(如果手动运行,则添加类路径),并将注释`@Benchmark`添加到要测试性能的方法中 3. 作为主方法使用带有显式命名的主类的 Java 命令,作为主方法使用带有可执行的`.jar`文件的 Java 命令,并且使用 IDE 运行作为主方法或者使用插件并运行单个方法 4. 以下任意两项:`Mode.AverageTime`、`Mode.Throughput`、`Mode.SampleTime`、`Mode.SingleShotTime` 5. 以下任意两项:`TimeUnit.NANOSECONDS`、`TimeUnit.MICROSECONDS`、`TimeUnit.MILLISECONDS`、`TimeUnit.SECONDS`、`TimeUnit.MINUTES`、`TimeUnit.HOURS`、`TimeUnit.DAYS` 6. 使用带有注释`@State`的类的对象 7. 使用`state`属性前面的注释`@Param` 8. 使用注释`@CompilerConrol` 9. 使用消耗生成结果的类型为`Blackhole`的参数 10. 使用注释`@Fork` # 第 18 章-编写高质量代码的最佳实践 1. a、b、c 2. 一般来说,这是推荐的,但不是必需的。但在某些情况下,例如,将要在基于哈希的数据结构中放置和搜索类的对象时,它是必需的 3. `obj1`小于`obj2` 4. 不 5. `StringBuilder` 6. 允许在不更改客户端代码的情况下更改实现 7. 对代码演化的更多控制和适应变化的代码灵活性 8. 更可靠的代码,更快的编写,更少的测试,更容易让其他人理解 9. 其他将要维护您的代码的程序员,以及稍后的您 10. 不,但对你很有帮助