Java软件工程师面试必备知识详解
4星 · 超过85%的资源 需积分: 7 45 浏览量
更新于2024-07-26
收藏 894KB DOC 举报
"最新葵花宝典 - Java软件工程师笔试面试必备"
这篇资料是针对Java软件工程师面试和笔试准备的一份指南,涵盖了多个Java基础知识和核心概念。以下是对这些知识点的详细解析:
1. Java源文件可以包含多个类,但只能有一个公开的(public)类,其他非公开类没有数量限制。
2. Java中没有goto语句,它鼓励使用结构化编程,避免无尽的跳转。
3. &是位运算符,&&是逻辑运算符。&在任何时候都会计算两边的操作数,而&&只有在左边操作数为真时才会计算右边。
4. 使用`break`语句可以从多重嵌套循环中跳出。
5. switch语句不能作用于byte、long或String。Java 7之前仅支持byte、short、char和int,Java 7开始支持枚举,Java 14及以后版本支持字符串(String)。
6. shorts1=1;s1=s1+1;这会导致编译错误,因为short加法的结果是int,需要强制转换。而s1+=1;会自动进行类型提升和赋值。
7. char型变量可以存储中文字符,因为一个中文字符在UTF-16编码下占两个字节。
8. 计算2乘以8可以用`System.out.println(2 << 3);`或者`System.out.println(2 * 8);`。
9. 设计一个大数计算器要考虑数值溢出问题,可以使用BigInteger类来处理。
10. final修饰变量时,引用不能改变,但引用的对象可以改变(如果是对象)。如果对象是不可变的(如String),则对象本身也不能改变。
11. "=="比较的是对象的引用,equals方法比较的是对象的内容。对于基本类型,"=="和equals效果相同。
12. 静态变量属于类,而实例变量属于对象。静态变量在内存中的位置固定,实例变量随对象创建。
13. 不可以从static方法内部直接调用非static方法,因为非static方法依赖于对象实例。
14. Integer是int的包装类,它们之间可以自动装箱拆箱。Integer对象的比较使用equals(),int值的比较使用"=="。
15. Math.round(11.5)等于12,Math.round(-11.5)等于-11。
16. 未给出代码,无法分析不妥之处。
17. public表示全局可见,private表示仅在本类可见,protected表示子类和本类可见,无修饰符时表示同包内可见。
18. Overload(重载)是方法名相同但参数列表不同的方法,返回值类型可以不同。Override(重写)是子类方法覆盖父类方法,必须保持方法签名一致。
19. 构造器不能被override,但可以重载。
20. 接口可以继承接口。抽象类可以实现接口,但不能继承具体类。抽象类中可以有静态的main方法,但无法作为程序入口。
21. 实现clone()时通常会调用`super.clone()`来克隆对象。
22. 面向对象的特征包括封装、继承、多态。
23. Java通过方法重写和父类引用子类对象实现多态。
24. abstract class和interface都可以定义抽象方法,但abstract class可以有实现的方法,可以有实例变量,而interface只能定义常量和抽象方法。
25. abstract的method不能是static、native或synchronized。
26. 内部类是定义在另一个类内部的类,分为静态内部类(StaticNestedClass)和非静态内部类(InnerClass)。静态内部类不依赖于外部类的实例,而内
点击了解资源详情
点击了解资源详情
点击了解资源详情
2022-06-10 上传
2009-03-14 上传
2010-11-02 上传
2010-07-14 上传
2021-06-02 上传
2010-07-12 上传
Frank_1990
- 粉丝: 2
- 资源: 15
最新资源
- 火炬连体网络在MNIST的2D嵌入实现示例
- Angular插件增强Application Insights JavaScript SDK功能
- 实时三维重建:InfiniTAM的ros驱动应用
- Spring与Mybatis整合的配置与实践
- Vozy前端技术测试深入体验与模板参考
- React应用实现语音转文字功能介绍
- PHPMailer-6.6.4: PHP邮件收发类库的详细介绍
- Felineboard:为猫主人设计的交互式仪表板
- PGRFileManager:功能强大的开源Ajax文件管理器
- Pytest-Html定制测试报告与源代码封装教程
- Angular开发与部署指南:从创建到测试
- BASIC-BINARY-IPC系统:进程间通信的非阻塞接口
- LTK3D: Common Lisp中的基础3D图形实现
- Timer-Counter-Lister:官方源代码及更新发布
- Galaxia REST API:面向地球问题的解决方案
- Node.js模块:随机动物实例教程与源码解析