Java面试精华宝典:基础知识篇

需积分: 1 0 下载量 146 浏览量 更新于2024-07-23 收藏 602KB DOC 举报
Java面试宝典 Java面试宝典是面试官和应聘者的良好伙伴,涵盖了Java基础知识、Java面试题、Java开发技巧等多方面的内容。下面是对Java面试宝典的详细知识点总结: **Java基础部分** 1. 一个".java"源文件中是否可以包括多个类(不是内部类)?有什么限制? 答案:可以,但是只能有一个public类,且文件名必须与public类同名。 2. Java有没有goto? 答案:Java中没有goto语句,但可以使用break和continue语句来控制循环。 3. 说说&和&&的区别。 答案:&是位运算符,&&是逻辑运算符,&执行完所有操作再进行判断,&&短路运算符,左边为false右边不执行。 4. 在JAVA中如何跳出当前的多重嵌套循环? 答案:使用标签(label)和break语句可以跳出指定的循环。 5. switch语句能否作用在byte上,能否作用在long上,能否作用在String上? 答案:switch语句可以作用在byte、short、char、int类型上,但不能作用在long和String类型上。 6. shorts1=1;s1=s1+1;有什么错?shorts1=1;s1+=1;有什么错? 答案:short类型不能直接进行加法操作,需要强制转换为int类型。 7. char型变量中能不能存贮一个中文汉字?为什么? 答案:char类型可以存贮一个中文汉字,因为char类型占用两个字节,可以存贮 Unicode 码点在 0 到 65535 之间的字符。 8. 用最有效率的方法算出2乘以8等於几? 答案:使用左移运算符 "<<", 2 << 3 等於 2 乘以 8。 9. 请设计一个一百亿的计算器。 答案:可以使用 BigInteger 类或自定义大整数类来实现一百亿的计算器。 10. 使用final关键字修饰一个变量时,是引用不能变,还是引用的对象不能变? 答案:使用final关键字修饰一个变量时,引用不能变,但引用的对象可以变。 11. "=="和equals方法究竟有什么区别? 答案:"=="比较的是对象的引用,equals 方法比较的是对象的内容。 12. 静态变量和实例变量的区别? 答案:静态变量属于类,实例变量属于对象,静态变量共享,实例变量独立。 13. 是否可以从一个static方法内部发出对非static方法的调用? 答案:不能,从静态方法内部不能调用非静态方法,反之亦然。 14. Integer与int的区别 答案:Integer是对象,int是基本类型,Integer可以为null,int不能为null。 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继承类访问,不写默认包访问。 18. Overload和Override的区别。Overloaded的方法是否可以改变返回值的类型? 答案:Overload是编译时多态,Override是运行时多态,Overloaded的方法可以改变返回值的类型。 19. 构造器Constructor是否可被override? 答案:构造器不能被Override,因为构造器不是方法。 20. 接口是否可继承接口?抽象类是否可实现(implements)接口?抽象类是否可继承具体类(concrete class)?抽象类中是否可以有静态的main方法? 答案:接口可以继承接口,抽象类可以实现接口,抽象类可以继承具体类,抽象类中不能有静态的main方法。 21. 写clone()方法时,通常都有一行代码,是什么? 答案:super.clone()。 22. 面向对象的特征有哪些方面 答案:封装、继承、多态。 23. java中实现多态的机制是什么? 答案:方法重写和方法重载。 24. abstract class和interface有什么区别? 答案:抽象类可以有构造器,可以有非抽象方法,接口不能有构造器,所有方法都是抽象方法。 25. abstract的method是否可同时是static,是否可同时是native,是否可同时是synchronized? 答案:抽象方法不能是静态的,不能是 native 的,不能是 synchronized 的。 26. 什么是内部类?StaticNestedClass和Inner Class的不同。 答案:内部类是类中定义的类,StaticNestedClass是静态内部类,Inner Class是非静态内部类。 27. 内部类可以引用它的包含类的成员吗?有没有什么限制? 答案:内部类可以引用它的包含类的成员,但需要注意访问权限和静态内部类的限制。