Java 教程是为 JDK 8 编写的。本页中描述的示例和实践未利用在后续版本中引入的改进。
此页面将 Java 教程中的部分映射到 Java SE 8 Programmer II 考试中涵盖的主题。此考试与 Oracle Certified Professional,Java SE 8 Programmer 证书相关联。本次考试涉及的主题是:
Item1:实现封装。
Item2:实现继承,包括可见性修饰符和组合。
Item3:实现多态性。
Item4:从 Object 类覆盖 hasCode,equals 和 toString 方法。
Item5:创建和使用单例类和不可变类。
Item6:开发在初始化块,变量,方法和类时使用 static 关键字的代码。
Item1:开发使用抽象类和方法的代码。
Item2:开发使用 final 的代码。
Item3:创建内部类,包括静态内部类,局部类,嵌套类和匿名内部类。
Item4:使用枚举类型,包括 enum 类型中的方法和构造函数
Item5:开发声明,实现和/或继承接口的代码,并使用 @Override 注解。
Item6:创建和使用 lambda 表达式。
Generics (Updated) 课程,Collections 路径,特别是指定页面。
Item1:创建和使用泛型类。
Item2:创建并使用 ArrayList,TreeSet,TreeMap 和 ArrayDeque 对象。
Item3:使用 java.util.Comparator 和 java.lang.Comparable 接口。
Item4:集合,流和过滤器。
Item5:使用 Streams 和 List 的 forEach 方法迭代。
Item6:描述 Stream 接口和 Stream 管道。
Item7:使用 lambda 表达式过滤集合。
Item8:对流使用方法引用。
Lambda Expressions 和 Aggregate Operations 部分涵盖以下某些项目:
Item1:使用 java.util.function 包中包含的内置接口,例如 Predicate,Consumer,Function,和 Supplier。
Item2:开发使用基本版本的功能接口的代码。
Item3:开发使用二元版本的功能接口的代码。
Item4:开发使用 UnaryOperator 接口的代码。
Lambda Expressions 和 Aggregate Operations 部分涵盖以下某些项目:
Item1:开发代码以使用 peek()和 map()方法从对象中提取数据,包括 map()方法的基本版本。
Item2:使用 Stream 类的搜索方法搜索数据,包括 findFirst,findAny,anyMatch,allMatch,noneMatch。
Item3:开发使用 Optional 类的代码。
Item4:开发使用 Stream 数据方法和计算方法的代码。
Item5:使用 Stream API 对集合进行排序。
Item6:使用 Collectors 类使用 collect 方法和组/分区数据将结果保存到集合中。
Item7:在 Stream API 中使用 flatMap()方法。
Item1:使用 try-catch 和 throws 语句。
Item2:使用 catch,multi-catch 和 finally 子句。
Item3:使用带有 try-with-resources 语句的 autoclose 资源。
Item4:创建自定义异常和自动关闭资源。
Item5:使用断言测试不变量。
Item1:使用 LocalDate,LocalTime,LocalDateTime,Instant,Period 和 Duration 创建和管理基于日期和基于时间的事件,包括将日期和时间组合到单个对象中。
Item2:处理跨时区的日期和时间,并管理夏令时产生的变化,包括格式化日期和时间值。
Item3:使用 Instant,Period,Duration 和 TemporalUnit 定义和创建和管理基于日期和基于时间的事件。
Item1:从控制台读取和写入数据。
I/O Streams 课程,特别是以下页面:
Item2:使用 java.io package 中的 BufferedReader,BufferedWriter,File,FileReader,FileWriter,FileInputStream,FileOutputStream,ObjectOutputStream,ObjectInputStream 和 PrintWriter。
File I/O (Featuring NIO.2) 课程,特别是以下页面:
Item1:使用 Path 接口操作文件和目录路径。
Item2:使用 Files 类检查,读取,删除,复制,移动和管理文件或目录的元数据。
Item3:将 Stream API 与 NIO.2 一起使用。
Java 教程不涉及设计模式主题。以下参考资料介绍了使用 Java 编程语言的设计模式:
Item1:编写声明,实现和/或继承接口的代码。
Item2:在接口继承和类继承之间进行选择。
Item3:开发实现“is-a”和/或“has-a”关系的代码。
Item4:应用对象组合原则。
Item5:使用单例设计模式设计类。
Item6:编写代码来实现 DAO 模式。
Item7:使用工厂设计和创建对象,并使用 API中的工厂。
Item1:搜索,解析和构建字符串。
Item2:使用正则表达式搜索,解析和替换字符串。
Item3:使用字符串格式化。
Item1:使用 Runnable,Callable 创建工作线程,并使用 ExecutorService 同时执行任务。
Item2:确定死锁,饥饿,活锁和竞争条件中潜在的线程问题。
Item3:使用 synchronized 关键字和 java.util.concurrent.atomic 包来控制线程执行的顺序。
Item4:使用 java.util.concurrent 集合和类,包括 CyclicBarrier 和 CopyOnWriteArrayList。
Item5:使用并行 Fork/Join Framework。
Item6:使用并行流,包括缩减,分解,合并进程,管道和性能。
Item1:描述构成 JDBC API 核心的接口,包括 Driver,Connection,Statement 和 ResultSet 接口及其与提供程序实现的关系。
Item2:使用 DriverManager 类(包括 JDBC URL)标识连接到数据库所需的组件。
Item3:提交查询并从数据库中读取结果,包括创建语句,返回结果集,迭代结果以及正确关闭结果集,语句和连接。
Item1:使用 Locale 对象读取并设置语言环境。
Item2:创建并读取 Properties 文件。
Item3:为每个语言环境构建资源包,并在应用程序中加载资源包。