Java软件工程师面试必备知识详解
4星 · 超过85%的资源 需积分: 7 155 浏览量
更新于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)。静态内部类不依赖于外部类的实例,而内
2021-09-30 上传
2020-09-23 上传
2011-01-18 上传
2022-06-10 上传
2009-03-14 上传
2010-11-02 上传
2010-07-12 上传
2021-11-25 上传
2013-01-25 上传
Frank_1990
- 粉丝: 2
- 资源: 15
最新资源
- coloresCode:接口minimastista para可视化和修改颜色y copiar supectivocódigohtml
- 人工智能导论课程大作业.zip
- 用于Laravel和Lumen框架的RESTful API软件包。-PHP开发
- arificial-immune.rar_
- soal-shift-sisop-modul-1-A02-2021
- Ipewa-v2:最终开发者协理会,综合平台高级协理会
- TISOLib-开源
- code-samples
- 纸秘书
- marionette-form-view-demo:我为Marionette编写的FormView类的演示
- 人工智能系统推理库ADC.zip
- el-plugins
- 2.rar_图形图像处理_Visual_C++_
- giffygram:基于组件的VanillaJS应用程序供NSS学生构建
- ProTrack:作为软件配置管理课程一部分的项目管理应用程序
- Android_Demo:Study_Android