Java面试必备知识:基础篇
4星 · 超过85%的资源 需积分: 16 51 浏览量
更新于2024-07-27
收藏 989KB PDF 举报
"Java程序员面试宝典2011最新出炉.pdf"
这是一份针对Java软件工程师面试准备的综合指南,包含了2011年更新的面试知识点。这份宝典旨在帮助Java开发者全面复习和掌握Java语言的关键概念和技术,以应对各种面试挑战。
1. Java基础部分:
- 一个.java源文件可以包含多个类,但只能有一个公共类(public class),且文件名必须与公共类名一致。
- Java没有goto语句,这是为了保持代码的流程控制更清晰,避免复杂的跳转。
- &是位运算符,&&是逻辑运算符。&会始终计算两边的操作数,而&&会根据左操作数决定是否计算右操作数,这称为短路逻辑。
- 要跳出多重嵌套循环,可以使用break语句配合标签(label)来指定退出哪个循环。
- switch语句不能直接作用于byte,但可以通过强制类型转换使用;在Java 7及之后的版本,可以作用于String。
2. 数据类型和变量:
- short s1=1; s1=s1+1; 错误,因为结果会自动提升为int类型,需要进行类型转换。而s1+=1则自动处理了类型转换。
- char型变量可以存储中文字符,因为UTF-16编码下每个汉字占用两个字节。
- 最有效率的计算2乘以8的方法是直接写2 * 8。
3. 类和对象:
- final关键字修饰变量时,意味着引用一旦赋值后不可改变,但引用的对象状态可以改变。
- "=="比较的是对象的引用,equals方法比较的是对象的内容。
- 静态变量属于类,实例变量属于对象。静态变量被所有实例共享,实例变量只属于特定实例。
- 不能从static方法内部直接调用非static方法,因为static方法与类关联,而非static方法与对象关联。
4. 泛型和数据类型:
- Integer与int的区别在于,Integer是对象,int是原始类型,Integer提供了更多方法,如缓存小数值等。
- Math.round(11.5)等于12,Math.round(-11.5)等于-11。
- 内部类的代码示例不完整,但通常内部类可以访问外部类的成员,包括私有成员。
5. 访问修饰符:
- public, private, protected以及默认访问修饰符决定了类、方法和字段的可见性范围。
6. 方法和继承:
- Overload(重载)是指同一类中方法名相同但参数列表不同的方法,返回类型可以不同。Override(重写)是指子类覆盖父类中的方法,方法名、参数列表和返回类型必须完全一致。
- 构造器不能被override,但可以重载。
- 接口可以继承其他接口,抽象类可以实现接口,但不能继承具体类。抽象类可以有静态的main方法。
7. 其他概念:
- clone()方法通常会调用super.clone()来创建对象的副本。
- 面向对象的特征包括封装、继承、多态。
- Java通过方法重写和抽象类/接口实现多态。
- abstract class和interface的主要区别在于abstract class可以包含方法实现,而interface只能定义方法签名。
- abstract method不能是static、native或synchronized,因为这些特性与抽象方法的定义冲突。
- 内部类是嵌套在另一个类内部的类,StaticNestedClass是静态内部类,不需要外部类的实例即可创建,而InnerClass是非静态内部类,需要外部类实例。
这份面试宝典涵盖了广泛的Java知识,对于准备面试的Java开发者来说,是一份非常有价值的参考资料。通过学习和理解这些知识点,开发者能够更好地理解Java的核心概念,提高面试成功率。
176 浏览量
106 浏览量
205 浏览量
731 浏览量
chenqipc
- 粉丝: 14
- 资源: 5