JAVA面试基础知识大全

需积分: 3 1 下载量 3 浏览量 更新于2024-07-28 收藏 665KB DOC 举报
JAVA面试知识宝典 JAVA是一种广泛应用的编程语言,具有强大且灵活的特性,广泛应用于Android应用开发、Web应用开发、企业软件开发等领域。以下是Java面试中常见的知识点: 一、Java基础知识 1. JAVA源文件中可以包括多个类,但这些类必须是公共类,并且文件名必须和公共类名相同。非公共类可以有多个,但只能有一个公共类。 2. Java中没有goto语句,goto语句是C语言中的跳转语句,Java中可以使用break、continue、return语句来控制程序流程。 3. &和&&的区别:&是位运算符,&&是逻辑运算符。&运算符可以对两个布尔值进行运算,返回true或false,&&运算符可以对两个布尔值进行运算,返回true或false,但只有当第一个布尔值为true时,第二个布尔值才会被计算。 4. 在JAVA中,可以使用标签来跳出当前的多重嵌套循环,例如:label:for(…) {for(…) {break label;}} 5. switch语句可以作用在byte、short、char、int类型上,但不能作用在long类型上,因为long类型的值可能超过switch语句的case值的范围。switch语句不能作用在String类型上,因为String类型不是基本类型。 6. shorts1=1;s1=s1+1;有什么错?shorts1=1;s1+=1;有什么错?前者会导致编译错误,因为short类型不能进行隐式转换为int类型,后者正确,因为+=运算符可以自动进行类型转换。 7. char型变量中能不能存贮一个中文汉字?可以,但中文汉字的 Unicode 码点可能超过char类型的范围,因此需要使用 Unicode 码点来表示中文汉字。 8. 用最有效率的方法算出2乘以8等於几?可以使用左移运算符,例如:2 << 3 = 2 * 8。 9. 请设计一个一百亿的计算器?可以使用BigInteger类来实现大数计算。 10. 使用final关键字修饰一个变量时,是引用不能变,还是引用的对象不能变?final关键字修饰的变量是引用不能变,例如:final String s = "hello"; s = "world";编译错误。 11. "=="和equals方法究竟有什么区别?"=="是比较对象的引用,equals方法是比较对象的内容。 12. 静态变量和实例变量的区别?静态变量属于类,实例变量属于对象。 13. 是否可以从一个static方法内部发出对非static方法的调用?不能,从static方法内部不能调用非static方法,因为static方法属于类,非static方法属于对象。 14. Integer与int的区别?Integer是int类型的包装类,int是基本类型。 15. Math.round(11.5)等於多少?Math.round(-11.5)等於多少?Math.round(11.5)等於12,Math.round(-11.5)等於-11。 16. 下面的代码有什么不妥之处?例如:int x = 10; String s = "x = " + x; System.out.println(s);没有问题。 17. 请说出作用域public,private,protected,以及不写时的区别?public是公共访问修饰符,private是私有访问修饰符,protected是保护访问修饰符,不写时默认为default访问修饰符。 18. Overload和Override的区别?Overload是方法重载,Override是方法重写。 19. 构造器Constructor是否可被override?不能,构造器不能被override,因为构造器是对象的初始化方法。 20. 接口是否可继承接口?可以,抽象类是否可实现(implements)接口?可以,抽象类是否可继承具体类(concrete class)?可以,抽象类中是否可以有静态的main方法?不能。 21. 写clone()方法时,通常都有一行代码,是什么?super.clone()。 22. 面向对象的特征有哪些方面?封装、继承、多态。 23. java中实现多态的机制是什么?方法重写和方法重载。 24. abstract class和interface有什么区别?abstract class是抽象类,interface是接口。 25. abstract的method是否可同时是static,是否可同时是native,是否可同时是synchronized?abstract方法不能同时是static、native、synchronized。 26. 什么是内部类?内部类是定义在类内部的类。StaticNestedClass和InnerClass的不同?StaticNestedClass是静态内部类,InnerClass是非静态内部类。 27. 内部类可以引用它的包含类的成员吗?可以,有什么限制?可以,但需要通过外部类的对象来访问内部类的成员。 28. AnonymousInnerClass(匿名内部类)是指没有名称的内部类。 这些知识点是Java面试中常见的基础知识点,了解这些知识点可以帮助您更好地应对Java面试。