Java核心技术精要:核心概念与最佳实践

需积分: 4 1 下载量 191 浏览量 更新于2024-12-08 收藏 432KB PDF 举报
"这篇材料主要涵盖了Java编程语言中的核心概念,包括集合、循环、常量、日期时间处理、可变参数方法、格式化输出、方法调用机制、构造器、随机数生成、静态导入、返回类型协变、访问修饰符、不可变类与方法、类型检查、字符串格式化、以及覆盖方法的注解使用等。" 1. **foreach循环**:Java中的foreach循环(也称为增强for循环)使得遍历数组和实现了`Iterable<T>`接口的集合(如List、Set等)变得更加简洁,语法为`for(type i: collection)` 2. **static final**:`static`关键字用来声明类级别的变量或方法,不依赖于类的实例即可访问;`final`则表示变量一旦赋值后不可更改,常用于声明常量。 3. **日期和时间处理**:`GregorianCalendar`是Java中处理日期和时间的类,需要注意月份是从0开始的,即1月是`0`,12月是`11`。 4. **可变参数方法**:如`System.out.printf()`,这种方法可以接受不同数量的参数,提供了更灵活的调用方式。 5. **货币和百分比格式化**:`NumberFormat`类提供了格式化数字的能力,如`NumberFormat.getCurrencyInstance()`用于货币格式,`NumberFormat.getPercentInstance()`用于百分比格式。 6. **方法调用**:Java中的方法调用是通过值传递,而不是引用传递,这意味着方法内部对参数的修改不会影响到方法外部的变量。 7. **默认构造器**:如果一个类没有定义任何构造器,编译器会自动提供一个无参的默认构造器。 8. **构造器链**:构造器可以通过`this()`调用同一类中的其他构造器,实现代码复用。 9. **随机数生成**:`Math.random()`函数用于生成0.0到1.0之间的随机浮点数,`Random`类提供了更多的随机数生成功能。 10. **静态导入**:`import static`允许直接导入类的静态成员,如`import static java.lang.System.*`,使得在代码中直接使用`System.out.println()`而无需指定类名。 11. **返回类型协变**:子类在覆盖父类方法时,可以将返回类型定义为父类返回类型的子类型,这是Java的一种协变特性。 12. **final修饰**:`final`类不能被继承,`final`方法不能被覆盖,增加了类和方法的不可变性。 13. **类型检查**:在使用`instanceof`关键字检查对象是否为特定类或其子类的实例时,可以避免不当的类型转换。 14. **String.format()**:这个方法用于格式化字符串,类似于C语言的`printf`函数。 15. **protected访问修饰符**:`protected`修饰的成员在本包和所有子类中可见。 16. **默认超类**:如果没有显式指定超类,那么`Object`类被视为所有类的最终超类。 17. **@Override注解**:在子类覆盖超类方法时,使用`@Override`注解可以确保方法确实覆盖了超类的同名方法,提高代码的可读性和安全性。