Java面试必备知识:基础篇
下载需积分: 10 | PDF格式 | 933KB |
更新于2024-07-20
| 153 浏览量 | 举报
"Java面试宝典,包含了Java基础部分的面试问题和答案,涉及语言特性、语法、类与对象、内存管理等多个方面。"
在Java面试中,基础部分通常是考察的重点,以下是一些常见问题和相关知识点:
1. 一个`.java`源文件中可以包含多个类,但只能有一个公开类(public class),且类名需与文件名相同。其他非公开类(如private或包访问类)可以在同一个文件中定义。
2. Java中没有`goto`语句,它遵循结构化编程原则,推崇使用流程控制结构(如if、for、while、switch)来控制程序流程。
3. `&`和`&&`都是逻辑运算符。`&`始终会计算两边的操作数,而`&&`(短路与)只有当第一个操作数为真时才会计算第二个操作数。
4. 要跳出多重嵌套循环,可以使用`break`语句配合标签(label)来指定跳出的循环层次。
5. `switch`语句可以作用在`byte`, `char`, `short`, `int`以及枚举类型上,自Java 7起,也可以作用在`String`上。
6. 对于`short`类型的变量,直接赋值加1会导致类型提升到`int`,所以`s1=s1+1`会报错。而`s1+=1`则会自动拆箱、转换、装箱,因此不会报错。
7. `char`型变量可以存储单个Unicode字符,包括中文汉字,因为每个`char`占16位。
8. 计算2乘以8最有效率的方法是直接使用`*`运算符:`2 * 8`。
9. 设计一个能处理百亿级计算的计算器要考虑效率和精度,可能需要使用大整数类(如BigInteger)和避免不必要的类型转换。
10. 使用`final`关键字修饰变量时,对于基本类型,其值不可变;对于引用类型,引用本身不可变,但引用的对象仍可变。
11. `"=="`比较的是两个变量的值是否相等,而`equals()`方法比较的是对象的内容是否相等。对于非`null`的引用类型,`==`比较的是引用是否指向同一对象,`equals()`是对象内容的比较。
12. 静态变量属于类,而实例变量属于类的每个实例。静态变量在类加载时初始化,所有实例共享;实例变量在创建对象时初始化,每个对象有自己的副本。
13. 不能从静态方法内部直接调用非静态方法,因为静态方法属于类,而非静态方法属于对象。
14. `Integer`是`int`的包装类,它们之间可以自动装箱和拆箱。`Integer`提供了更多方法和功能,而`int`是原始类型,性能更好。
15. `Math.round(11.5)`等于12,`Math.round(-11.5)`等于-11。`Math.round()`方法四舍五入到最接近的整数。
16. 下面的代码可能存在的不妥之处通常与变量的作用域、类型转换、异常处理等有关,具体分析需要查看完整代码。
17. 公共(public)、私有(private)、受保护(protected)和默认(package-private)访问修饰符分别代表了不同级别的访问权限。`public`可在任何地方访问,`private`仅在类内部,`protected`在类及其子类和同包内,无修饰符则限于同包。
18. Overload是重载,即方法名相同但参数列表不同。Override是重写,子类继承父类后修改或实现父类的方法。Overloaded方法可以改变返回值类型,但Override不能。
19. 构造器Constructor不能被override,但可以重载。
20. 接口可以继承接口。抽象类可以实现接口,但不能继承具体类。抽象类可以有静态的main方法,但静态方法无法访问非静态成员。
21. 在实现`clone()`方法时,通常会包含`super.clone()`调用,以复制当前对象。
22. 面向对象的特征主要包括封装、继承、多态。
23. Java通过方法重写(Override)和接口实现来实现多态。
24. `abstract`方法不能同时是`static`,因为静态方法与类关联,而抽象方法与对象关联。`abstract`方法也不能是`native`,因为`native`方法已由C/C++实现。同样,`abstract`方法不能是`synchronized`,因为抽象方法没有具体实现。
25. 内部类包括匿名内部类、局部内部类、成员内部类(包括静态嵌套类)。静态嵌套类(StaticNestedClass)与普通内部类(InnerClass)的主要区别在于,静态嵌套类不持有对外部类的引用,可以直接通过类名创建实例。
这些面试问题涵盖了Java基础知识的广泛范围,准备面试时需要深入理解并能灵活运用这些知识点。
相关推荐
4 浏览量
4 浏览量
2 浏览量
qq_35614614
- 粉丝: 0
- 资源: 1
最新资源
- PMSM控制和建模(FOC、SVPWM、THIPWM等)_磁场定向控制、空间矢量调制、弱磁、速度/转矩控制、电厂模型、自动校准和
- serverless-angular-user-data:ღˇ◡ˇ(ᵕ꒶̮ᵕෆ联手Anuglar,Netlify和Hasura以获得一些用户数据乐趣ღˇෆ
- 红色动态微立体创业融资计划书PPT模板
- qMedia:一个ComputerCraft程序,可用于在终端上创建动画(如Powerpoint)
- DS3232RTC:用于Maxim Integrated DS3232和DS3231实时时钟的Arduino库
- 工兵
- C-24-Box-Model
- recaptcha:[已取消] Laravel 5的reCAPTCHA验证器
- 链接5G频段wifi 显示saved,然后重复点击3次链接wifi,显示链接失败,ylog和空口抓包 抓包 8581new
- angularTools:尝试通过学习角度来做点事情
- 点击图片展开或者收起代码
- Ajax-Rails-4-AJAX-modal-form-render-JS-response-as-table-row.zip
- 简约农村三层别墅建筑设计.rar
- 魔术8球
- 蓝灰色创意公司简介PPT模板
- ESPHelper:一个使ESP8266上使用WiFi和MQTT变得容易的库