Java开发面试大全:基础知识篇

需积分: 1 0 下载量 8 浏览量 更新于2024-07-19 收藏 206KB DOCX 举报
Java面试宝典 Java面试宝典是 Java 经典面试题、笔试题最全面的面试资料,涵盖了 Java 基础知识、Java 面向对象编程、Java 多态、Java 内部类、Java 抽象类和接口等方面的知识点。 一、Java 基础部分 1. 一个".java"源文件中是否可以包括多个类(不是内部类)?有什么限制? 答:可以,但只能有一个 public 类,其他类不能是 public 的。 2. Java 有没有 goto? 答:Java 没有 goto 语句,但可以使用 break 和 continue 语句来控制循环。 3. 说说 & 和 && 的区别。 答:& 是位运算符,&& 是逻辑与运算符,用于判断条件。 4. 在 JAVA 中如何跳出当前的多重嵌套循环? 答:使用 break 或 return 语句来跳出循环。 5. switch 语句能否作用在 byte 上,能否作用在 long 上,能否作用在 String 上? 答:switch 语句可以作用在 byte、short、char、int 和 enum 类型上,但不能作用在 long 和 String 上。 6. shorts1=1;s1=s1+1;有什么错?shorts1=1;s1+=1;有什么错? 答:short 类型的变量不能使用 + 运算符,需要使用 += 运算符。 7. char 型变量中能不能存贮一个中文汉字?为什么? 答:char 类型的变量可以存贮一个中文汉字,因为 char 类型的变量可以存贮 Unicode 字符。 8. 用最有效率的方法算出 2 乘以 8 等於 几? 答:使用左移运算符 <<,2 << 3 等於 16。 9. 请设计一个一百亿的计算器。 答:可以使用 BigInteger 类来设计一个一百亿的计算器。 10. 使用 final关键字修饰一个变量时,是引用不能变,还是引用的对象不能变? 答:使用 final 关键字修饰一个变量时,引用不能变,但引用的对象可以变。 十一、=="和 equals 方法究竟有什么区别? 答:== 运算符比较的是对象的引用,而 equals 方法比较的是对象的值。 十二、静态变量和实例变量的区别? 答:静态变量是属于类的,实例变量是属于对象的。 十三、是否可以从一个 static 方法内部发出对非 static 方法的调用? 答:不可以,从一个 static 方法内部不能发出对非 static 方法的调用。 十四、Integer 与 int 的区别 答:Integer 是一个对象,int 是一个基本类型。 十五、Math.round(11.5) 等於 多少?Math.round(-11.5) 等於 多少? 答:Math.round(11.5) 等於 11,Math.round(-11.5) 等於 -11。 十六、下面的代码有什么不妥之处? 答:需要根据具体代码来判断。 十七、请说出作用域 public,private,protected,以及不写时的区别。 答:public 是公共的,private 是私有的,protected 是保护的,不写时默认为包私有。 十八、Overload 和 Override 的区别。Overloaded 的方法是否可以改变返回值的类型? 答:Overload 是方法重载,Override 是方法重写,Overloaded 的方法可以改变返回值的类型。 十九、构造器 Constructor 是否可被 override? 答:构造器不能被 override。 二十、接口是否可继承接口?抽象类是否可实现(implements)接口?抽象类是否可继承具体类(concrete class)?抽象类中是否可以有静态的 main 方法? 答:接口可以继承接口,抽象类可以实现接口,抽象类可以继承具体类,抽象类中不能有静态的 main 方法。 二十一、写 clone() 方法时,一般都有一行代码,是什么? 答:一般都有一行代码是 super.clone()。 二十二、面向对象的特征有哪些方面。 答:面向对象的特征有封装、继承、多态三个方面。 二十三、java 中实现多态的机制是什么? 答:java 中实现多态的机制是通过方法重写和方法重载来实现的。 二十四、abstract class 和 interface 有什么区别? 答:abstract class 是抽象类,interface 是接口,抽象类可以有实现的方法,接口不能有实现的方法。 二十五、abstract 的 method 是否可同时是 static,是否可同时是 native,是否可同时是 synchronized? 答:abstract 的 method 不能同时是 static、native 和 synchronized。 二十六、何为内部类?StaticNestedClass 和 InnerClass 的不同。 答:内部类是定义在另一个类内部的类,StaticNestedClass 是静态内部类,InnerClass 是实例内部类。 二十七、内部类可以引用它的包含类的成员吗?有没有什么限制? 答:内部类可以引用它的包含类的成员,但需要注意访问权限的限制。 二十八、AnonymousInnerClass(匿名内部类)是什么? 答:AnonymousInnerClass 是匿名内部类,定义时不需要明确的类名。
2017-08-01 上传