Java面试必备知识:基础篇
需积分: 0 63 浏览量
更新于2024-07-23
收藏 1.12MB PDF 举报
"Java面试宝典2013_PDF版"
这是一份汇集了大量Java面试题的资料,旨在帮助求职者准备Java相关的面试,涵盖了许多基础到高级的Java编程概念。
1. Java源文件可以包含多个类,但只能有一个公开的(public)类,其他非公开类没有数量限制。
2. Java中没有goto语句,它在Java中不被支持。
3. &是位运算符,表示按位与,&&是逻辑运算符,表示逻辑与。在布尔表达式中,&&具有短路特性,如果左侧表达式为假,右侧不会执行。
4. 跳出多重嵌套循环,可以使用`break`语句配合标签(label)来实现。
5. switch语句可以作用在byte、char、short和int类型上,Java 7以后还可以作用于枚举类型。但不能作用于long或String,尽管Java 7后String可以用于switch,但long不可以。
6. shorts1=1;s1=s1+1; 这里的错误在于short和int之间的类型转换,需要强制类型转换。s1+=1; 这里会自动进行类型提升,所以是正确的。
7. char类型可以存储单个Unicode字符,包括中文汉字。
8. 计算2乘以8最有效率的方式是直接写`2 * 8`。
9. 设计一个能处理一百亿计算的计算器,需要考虑数值类型的选择,如使用BigInteger,以及效率优化。
10. 使用final修饰变量时,如果是引用类型,意味着引用不可变,即不能指向其他对象;如果是基本类型,意味着值不可变。
11. "=="比较的是值,equals方法比较的是对象的内容。对于非原始类型,equals通常重写自Object类,用于比较对象内容是否相等。
12. 静态变量属于类,而实例变量属于对象。静态变量可以被所有实例共享,实例变量只属于特定对象。
13. 不可以,静态方法内部不能直接调用非静态方法,因为静态方法在类加载时就可以被调用,而非静态方法需要先创建对象。
14. Integer是int的包装类,它们一个是对象,一个是基本类型。Integer对象在一定范围内可以自动装箱拆箱,但性能上不如直接使用int。
15. Math.round(11.5)等于12,Math.round(-11.5)等于-11。
16. 缺少代码,无法分析不妥之处。
17. public表示全局可访问,private表示仅限本类访问,protected表示本类和子类可访问,无修饰词则默认为包内访问。作用域不同,决定了其他类对这些成员的访问权限。
18. Overload是重载,允许方法名相同但参数列表不同;Override是重写,子类可以覆盖父类的同名方法,但返回类型和参数列表必须一致。重载不改变返回值类型。
19. 构造器不能被覆盖,因为构造器不是继承的一部分,而是每个类特有的。
20. 接口可以继承接口,抽象类可以实现接口,但不能继承具体类。抽象类可以有静态的main方法,但不能作为程序入口。
21. 在实现克隆(clone)方法时,通常会有`super.clone()`调用,以实现对象的浅复制。
22. 面向对象的特征包括封装、继承、多态和抽象。
23. Java中的多态通过方法重写(Override)和向上转型实现。
24. abstract class和interface都是抽象类型,但abstract class可以有方法实现,可以有非抽象方法,可以有构造器;interface完全抽象,只能声明方法,不能有方法实现。
25. abstract method不能同时是static,因为static意味着与类相关联,而抽象方法与具体实现有关;不能同时是native,因为native方法需要由C/C++实现;也不能同时是synchronized,因为抽象方法没有实现体。
26. 内部类是定义在另一个类内部的类,StaticNestedClass是静态内部类,不需要外部类实例即可创建,而InnerClass是非静态内部类,需要对外部类有引用。
27. 内部类可以引用其包含类的成员,包括私有成员,但静态内部类不能直接访问非静态成员,需要通过外部类实例访问。
28. AnonymousInnerClass(匿名内部类)可以继承其他类或实现接口,但不能声明为公开(public),也没有类名,常用于简洁地实现回调函数或适配器。
这些面试题覆盖了Java语法、面向对象、异常处理、集合框架、内存管理等多个方面,是准备Java面试的重要参考资料。
2019-09-05 上传
2020-01-14 上传
2023-08-13 上传
2023-07-15 上传
2023-06-20 上传
2024-05-13 上传
2023-08-27 上传
2023-09-17 上传
2024-01-06 上传
蜜蜂就是我自己
- 粉丝: 71
- 资源: 8
最新资源
- 达梦数据库DM8手册大全:安装、管理与优化指南
- Python Matplotlib库文件发布:适用于macOS的最新版本
- QPixmap小demo教程:图片处理功能实现
- YOLOv8与深度学习在玉米叶病识别中的应用笔记
- 扫码购物商城小程序源码设计与应用
- 划词小窗搜索插件:个性化搜索引擎与快速启动
- C#语言结合OpenVINO实现YOLO模型部署及同步推理
- AutoTorch最新包文件下载指南
- 小程序源码‘有调’功能实现与设计课程作品解析
- Redis 7.2.3离线安装包快速指南
- AutoTorch-0.0.2b版本安装教程与文件概述
- 蚁群算法在MATLAB上的实现与应用
- Quicker Connector: 浏览器自动化插件升级指南
- 京东白条小程序源码解析与实践
- JAVA公交搜索系统:前端到后端的完整解决方案
- C语言实现50行代码爱心电子相册教程