Java面试必备知识点大全

需积分: 33 0 下载量 84 浏览量 更新于2024-07-19 收藏 2.14MB PDF 举报
Java面试宝典 Java面试宝典是 Java 开发者面试的必备指南,涵盖了 Java 基础知识、面向对象编程、多态、继承、接口、抽象类、内部类、静态变量、final 关键字、equals 方法、构造器、Override 和 Overload 等重要概念。 **Java 基础知识** 1. 一个 ".java" 源文件中是否可以包括多个类(不是内部类)?有什么限制? 答:可以,但只有一个公共类,其他类必须是 default 或私有类。 2. Java 有没有 goto? 答:Java 没有 goto 语句,但可以使用 break 和 continue 语句来跳出循环。 3. 说说 & 和 && 的区别。 答:& 是位运算符,&& 是逻辑与运算符。 4. 在 JAVA 中如何跳出当前的多重嵌套循环? 答:使用标签 break 语句或 return 语句。 5. switch 语句能否作用在 byte 上,能否作用在 long 上,能否作用在 String 上? 答:可以在 byte、short、char、int型变量上使用 switch 语句,但不能在 long、String 上使用。 6. shorts1=1;s1=s1+1; 有什么错?shorts1=1;s1+=1; 有什么错? 答:第一句错误,因为 short 类型变量不能自动转换为 int 类型;第二句正确,因为 += 运算符隐式地将 short 转换为 int。 7. char 型变量中能不能存贮一个中文汉字?为什么? 答:可以,因为 char 型变量可以存储 Unicode 字符,包括中文汉字。 8. 用最有效率的方法算出 2 乘以 8 等于几? 答:使用位运算符 <<,即 2 << 3。 9. 请设计一个一百亿的计算器 答:可以使用 BigInteger 类或自定义大整数类。 10. 使用 final 关键字修饰一个变量时,是引用不能变,还是引用的对象不能变? 答:final 关键字修饰的变量的引用不能变,但引用的对象可以变。 **面向对象编程** 11. "==" 和 equals 方法究竟有什么区别? 答:"==" 比较引用是否相等,而 equals 方法比较对象的实际值是否相等。 12. 静态变量和实例变量的区别? 答:静态变量属于类,实例变量属于对象实例。 13. 是否可以从一个 static 方法内部发出对非 static 方法的调用? 答:不可以,因为 static 方法属于类,不能访问实例变量和方法。 14. Integer 与 int 的区别 答:Integer 是对象封装类型,int 是基本数据类型。 15. Math.round(11.5) 等於多少?Math.round(-11.5) 等於多少? 答:Math.round(11.5) 等於 11,Math.round(-11.5) 等於 -11。 **继承和多态** 16. 下面的代码有什么不妥之处? 答:代码中可能存在多态的使用错误。 17. 请说出作用域 public,private,protected,以及不写时的区别 答:public 表示公共访问,private 表示私有访问,protected 表示保护访问,default 表示缺省访问。 18. Overload 和 Override 的区别。Overloaded 的方法是否可以改变返回值的类型? 答:Overload 是方法重载,Override 是方法覆写;Overloaded 的方法可以改变返回值的类型。 19. 构造器 Constructor 是否可被 override? 答:不能,因为构造器不是方法,不能被 override。 20. 接口是否可继承接口?抽象类是否可实现(implements)接口?抽象类是否可继承具体类(concrete class)?抽象类中是否可以有静态的 main 方法? 答:可以、可以、可以、可以。 21. 写 clone() 方法时,通常都有一行代码,是什么? 答:super.clone()。 22. 面向对象的特征有哪些方面 答:继承、多态、封装、抽象。 23. java 中实现多态的机制是什么? 答:使用方法 override 和方法 overload。 24. abstract class 和 interface 有什么区别? 答:abstract class 可以有实现的方法,interface 不能有实现的方法。 25. abstract 的 method 是否可同时是 static,是否可同时是 native,是否可同时是 synchronized? 答:不能,abstract 方法不能是 static、native 或 synchronized。 26. 什么是内部类?StaticNestedClass 和 InnerClass 的不同。 答:内部类是定义在另一个类中的类;StaticNestedClass 是静态内部类,InnerClass 是非静态内部类。 27. 内部类可以引用它的包含类的成员吗?有没有什么限制? 答:可以,但需要注意访问修饰符和 static 变量的限制。 28. A 答:No answer. 本资源摘要信息涵盖了 Java 面试的重要知识点,包括 Java 基础知识、面向对象编程、继承和多态等方面,旨在帮助 Java 开发者快速掌握 Java 面试的关键概念。