常见的java面试题,java面试常见问题与答案
如何解决写爬虫IP受阻的问题?立即使用。
本文为大家整理了几个国外的java面试问题,听说难倒了不少人。让我们来看看这些面试问题,看看它们有什么有趣的地方。
1.以下Java代码的输出是什么?
公共类测试{
公共静态void main(String[] args) {
方法(空);
}
公共静态void方法(对象o) {
System.out.println(“对象方法”);
}
公共静态void方法(字符串){
system . out . println(“String method”);
}
}回答:
“字符串方法”将被打印。首先,null不是Java中的对象。在Java中,我们可以将null赋给任何引用类型。而Java中的String是Java.lang.String类的对象。这里,Java编译器将选择最具体的参数类型来调用重载方法。字符串类型比对象更具体,因此将调用方法(String s)方法。
2.以下Java代码的输出是什么?
公共类测试{
公共静态void main(String[] args){
整数num1=100
整数num2=100
if(num1==num2){
system . out . println( num 1==num 2 );
}
否则{
System.out.println(num1!=num 2’);
}
}
}回答:
将打印“num1==num2”。每当“==”用于比较两个不同的对象引用时,值总是“false”。但是在这里,因为整数缓存,num1和num2是自动装箱的。因此num1==num2返回“真”。同时,整数缓存只会发生在-128和127之间的值。
3.垃圾收集如何防止Java应用程序内存不足?
回答:
Java垃圾收集器不能防止Java应用程序耗尽内存。它只是在对象超出范围并且不再需要时清除未使用的内存。因此,它不能保证防止Java应用程序耗尽内存!
(学习视频分享:java视频教程)
4.Java是“按引用传递”还是“按值传递”
回答:
Java总是“按值传递”。然而,当我们传递一个对象的值时,我们传递的是对它的引用,因为变量存储的是对象引用,而不是对象本身。但这并不是“按引用传递”,这可能会让初学者感到困惑。
5.下列代码创建了多少个字符串对象?
公共类测试{
公共静态void main(String[] args){
String s=新字符串( Hello World );
}
}回答:
创建了两个字符串对象。一个在堆内存中,一个在方法区的字符串常量池中。
6.下面的代码输出是什么?
公共类测试{
public static void main(String[]arr){
system . out . println(0.1 * 3==0.3);
system . out . println(0.1 * 2==0.2);
}
}回答:
第一次打印输出为假,第二次打印输出为真。由于浮点数的误差舍入,只有2的幂可以用简单的二进制记数法精确表示。不对应于2次方的数字必须四舍五入以适应有限的位数,因此0.1*3不等于0.3。
7.Java中有没有可能重写或者重载静态方法?
回答:
可以重载静态Java方法,但不可能覆盖它们。您可以在子类中编写另一个同名的静态方法,但它不会覆盖超类方法。在Java里叫做方法隐藏。
8.检验两个double值是否相等最可靠的方法是什么?
回答:
Double.compare(d1,d2)==09。如果try或catch块执行return语句,finally块会被执行吗?
回答:
会执行。防止finally块执行的唯一方法是使用System.exit()。
10.下面的代码输出是什么?
公共类测试{
公共静态void main(String[] args){
system . out . println(“main method”);
}
公共静态void main(字符串参数){
System.out.println(重载的main方法);
}
}回答:
“主方法”将被打印。不会有错误或异常,因为main方法可以在Java中重载。它必须从main方法内部调用,才能像其他方法一样执行。
推荐:java面试问答。这些都是你能否正确回答这些棘手的java面试问题的细节。请多关注我们的其他相关文章!
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。