Java面试精华:基础数据类型详解与String特性

需积分: 9 1 下载量 17 浏览量 更新于2024-07-09 收藏 4.12MB PDF 举报
Java-面试题(上)主要涉及Java SE部分的基础知识,包括数据类型、类型转换以及String类的相关特性。以下是对这些知识点的详细解析: 1. **基本数据类型及字节数**: Java有4类8种基本数据类型,它们分别是: - 整型:byte(1字节)、short(2字节)、int(4字节,这是默认的整型,如果没有指定,其他整型都会隐式提升到int类型)、long(8字节,用于存储更大的整数)。 - 浮点型:float(4字节)、double(8字节,用于存储更精确的浮点数)。 - 布尔型:boolean(1字节)。 - 字符型:char(2字节)。 2. **类型转换**: - 自动类型转换:当不同类型的变量进行算术运算时,会从较小的数据类型自动提升到较大的类型。例如,`shorts1 = 1; s1 = s1 + 1;` 会先将`s1`提升为`int`类型,再执行加法操作,然后将结果赋值回`short`类型。这种转换不会出错,但需要注意可能存在的精度损失。 - 强制类型转换:通过`(大类型)值`的形式将一个变量强制转换为另一种类型。例如,`shorts1 = (short)1;` 是强制类型转换,确保了值被正确地保存为`short`类型。 3. **浮点数比较**: `3 * 0.1 == 0.3` 返回`false`,因为浮点数的精度问题,尽管看起来相等,但实际上计算结果会有微小差异,这在Java中是正常的。 4. **String类的特性**: - String类在Java中是不可继承的,因为其`final`修饰符意味着它不能被派生出新的类。`final`修饰的类也被称为最终类,它不能被覆写或扩展。 - `final`修饰符在方法和变量中的作用: - 方法:表示该方法不能在子类中重写,提供了一个固定的实现。 - 变量(常量):如果声明为`final`,基本类型变量的值一旦确定就无法改变,而引用类型变量即使被`final`修饰,指向的对象内容仍可修改。 5. **String类的创建方式**: Java中`String`类的实例通常通过字符串字面量或`new`关键字创建。在`Test03`类中,`public static final String NUMBER`就是一个常量,用于存储字符串"A5588",并使用`final`修饰以确保其值不会被修改。 在面试中,这些问题旨在测试候选人的基础知识和对类型系统、基础数据类型行为以及类设计的理解。熟练掌握这些概念对于准备Java面试至关重要。