十大Java棘手的面试问题

在本教程中,我们将看到十大Java面试问题。如果您能解决这些问题,它将帮助您理解 爪哇编程 更好。您还可以通过 爪哇面试的前50名核心问答.
问题1:以下程序的输出是什么:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 |
包 com.Arpit.爪哇2blog; 进口 爪哇.实用程序.哈希图; 上市 类 哈希图Main { 上市 静态的 虚空 主要(串[] args) { 哈希图<国家,串> countryCapitalMap=新 哈希图<>(); 国家 印度国家= 新 国家(“印度”,10000); countryCapitalMap.放(印度国家, “德里”); 印度国家.名称=“假”; 系统.出.打印(“印度的首都是:”+countryCapitalMap.得到(印度国家)); } } 类 国家 { 串 名称; 长 人口; 国家(串 名称,长 人口) { 这个.名称=名称; 这个.人口=人口; } 上市 串 得到Name() { 返回 名称; } 上市 虚空 setName(串 名称) { 这个.名称 = 名称; } 上市 长 得到Population() { 返回 人口; } 上市 虚空 setPopulation(长 人口) { 这个.人口 = 人口; } @覆写 上市 整型 hashCode() { 最后 整型 主要 = 31; 整型 结果 = 1; 结果 = 主要 * 结果 + ((名称 == 空值) ? 0 : 名称.hashCode()); 结果 = 主要 * 结果 + (整型) (人口 ^ (人口 >>> 32)); 返回 结果; } @覆写 上市 布尔值 等于(目的 对象) { 如果 (这个 == 对象) 返回 真正; 如果 (对象 == 空值) 返回 假; 如果 (得到Class() != 对象.得到Class()) 返回 假; 国家 其他 = (国家) 对象; 如果 (名称 == 空值) { 如果 (其他.名称 != 空值) 返回 假; } 其他 如果 (!名称.等于(其他.名称)) 返回 假; 如果 (人口 != 其他.人口) 返回 假; 返回 真正; } } |
问题2:猜测以下程序的输出:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 |
包 com.Arpit.爪哇2blog; 进口 爪哇.实用程序.哈希集; 上市 类 国家 { 上市 串 名称; @覆写 上市 整型 hashCode() { 返回 31; } @覆写 上市 布尔值 等于(目的 对象) { 返回 真正; } 上市 静态的 虚空 主要(串 args[]) { 国家 countryOne = 新 国家(); 国家 countryTwo = 新 国家(); countryOne.名称 = “印度”; countryTwo.名称 = “尼泊尔”; 哈希集<国家> countrySet = 新 哈希集<>(); countrySet.加(countryOne); countrySet.加(countryTwo); 系统.出.打印(countrySet.尺寸()); } } |
问题3:猜测以下程序的输出:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 |
上市 类 方法重载示例 { 上市 虚空 methodTest(目的 目的) { 系统.出.打印(“调用对象方法”); } 上市 虚空 methodTest(串 目的) { 系统.出.打印(“调用String方法”); } 上市 静态的 虚空 主要(串 args[]) { 方法重载示例 萌=新 方法重载示例(); 萌.methodTest(空值); } } |
问题4:下面的程序可以编译吗?
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 |
包 com.Arpit.爪哇2blog; 上市 类 MethodOverrdingTestMain { 上市 静态的 虚空 主要(串[] args) { A a= 新 B(); a.方法2(); } } 类 A{ 上市 虚空 方法1() { 系统.出.打印(“ A类中的Method1”); } } 类 B 延伸 A{ 上市 虚空 方法1() { 系统.出.打印(“ B类中的Method1”); } 上市 虚空 方法2() { 系统.出.打印(“ B类中的Method2”); } } |
问题5:下面的程序可以编译:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 |
包 组织.Arpit.爪哇2blog; 上市 类 基类 { 上市 A m1() { 系统.出.打印(“在BaseClass方法中”); 返回 新 A(); } 上市 静态的 虚空 主要(串 args[]) { 基类 b=新 子类(); b.m1(); } } 类 子类 延伸 基类 { 上市 B m1() { 系统.出.打印(“在子类方法中”); 返回 新 B(); } } 类 A { } 类 B 延伸 A { } |
问题6:猜测以下代码的输出:
1 2 3 4 5 6 7 8 9 10 11 12 13 |
包 com.Arpit.爪哇2blog; 上市 类 串Main { 上市 静态的 虚空 主要(串[] args) { 串 str1=“ 爪哇2blog”; 串 str2=新 串(“ 爪哇2blog”); 系统.出.打印(str1==str2); 系统.出.打印(str1.等于(str2)); } } |
问题7:预测以下代码的输出:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 |
上市 类 异常测试 { 上市 静态的 虚空 主要(串[] args) { 系统.出.打印(exceptionTest()); } 上市 静态的 整型 exceptionTest() { 整型 i=6; 尝试{ 扔 新 空指针异常(); } 抓住(空指针异常 e) { i=10; 扔 e; } 最后 { i=20; 系统.出.打印("在最后块"); 返回 i; } } } |
问题8:下面的代码可以编译:
1 2 3 4 5 6 7 8 9 10 11 |
包 com.Arpit.爪哇2blog; 上市 类 NullCheckMain { 上市 静态的 虚空 主要(串[] args) { 整数 i = 新 整数(空值); 串 s = 新 串(空值); } } |
问题9:下面的程序可以编译:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
包 com.Arpit.爪哇2blog; 接口 可装饰的 { 串 颜色=“蓝色”; } 上市 类 房间 实施 可装饰的{ 上市 静态的 虚空 主要(串[] args) { 系统.出.打印(“用颜色装饰房间:”+房间.颜色); } } |
问题10:您可以在Java中覆盖静态和私有方法吗?
那’关于十大最棘手的Java面试问题。