• 欢迎访问搞代码网站,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站!
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏搞代码吧

15道非常经典的Java面试题 附详细答案

java 搞代码 4年前 (2022-01-05) 36次浏览 已收录 0个评论

这篇文章主要为大家推荐了15道非常经典的Java面试题,附详细答案,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

试题如下:

参考答案:

 import java.io.FileNotFoundException; import java.io.IOException; import java.util.ArrayList; import java.util.concurrent.ExecutorService; import java.util.concurrent.Executors; /** * Created by ysc on 7/26/16. */ public class Interview { private static void one(){ String str1 = "hello"; String str2 = "he"+new String("llo"); System.err.println(str1==str2); System.out.println("1. false"); } private static void two(){ int i = Integer.MAX_VALUE; System.err.println((i+1)<i); System.out.println("2. 存在一个i, 使得(i+1)<i> System.out.println(thread.getName()+"->"+thread.isDaemon()+" "+thread.getPriority())); System.out.println("3. gc线程是daemon线程"); } private static volatile int count = 0; private static void four(){ ExecutorService executorService = Executors.newCachedThreadPool(); for(int j=0; j{ for(int i=0; i<1000000; i++){ count++; } }); } System.out.println("count should be: "+10000000+", actual be: "+count); System.out.println("4. volatile不能保证线程安全"); } private static void five(){ ArrayList list = new ArrayList(20); list.add(1); System.out.println("debug code, not execute grow method"); System.out.println("5. list grow 0 times"); } private static void six() { System.out.println("BufferedReader's constructor only accepts a Reader instance"); System.out.println("6. new BufferedReader(new FileInputStream(\"a.dat\")); is wrong"); } private static void seven() { try{ if(true){ throw new IOException(); } }catch (FileNotFoundException e){ System.out.print("FileNotFoundException!"); }catch (IOException e){ System.out.print("IOException!"); }catch (Exception e){ System.out.print("Exception!"); } System.out.println("\n7. IOException!"); } private static void eight() { System.out.println("String s;System.out.println(s); error: variable s might not have been initialized\nRecompile with -Xlint:unchecked for details."); System.out.println("8. 由于String s没有初始化, 代码不能编译通过"); } private static void nine() { System.out.println("5"+2); System.out.println("9. 52"); } private static void ten() { int i = 2; int result = 0; switch(i){ case 1: result = result + i; case 2: result = result + i * 2; case 3: result = result + i * 3; } System.out.println("result="+result); System.out.println("10. 10"); } private static class Null{ public static void hello(){ System.out.println("hello"); } public static void main(String[] args) { ((Null)null).hello(); Null _null = (Null)null; _null.hello(); } } private static class StringExample1{ String str = new String("good"); char[] ch = {'a', 'b', 'c'}; public void change(String str, char[] ch){ str = "test ok"; ch[0] = 'g'; } public static void main(String[] args) { StringExample1 ex = new StringExample1(); ex.change(ex.str, ex.ch); System.out.print(ex.str+" and "); System.out.print(ex.ch); System.out.println(); } } private static class StringExample2{ public static void change(String str){ str = "welcome"; } public static void main(String[] args) { String str = "1234"; change(str); System.out.println(str); } } private static class ForLoop{ static boolean foo(char c){ System.out.print(c); return true; } public static void main(String[] args) { int i=0; for(foo('A');foo('B')&&(i<2);foo('C')){ i++; foo('D'); } System.out.println(); } } private static class HelloA{ public HelloA(){ System.out.println("HelloA"); } { System.out.println("I'm A class"); } static { System.out.println("static A"); } } private static class HelloB extends HelloA{ public HelloB(){ System.out.println("HelloB"); } { System.out.println("I'm B class"); } static { System.out.println("static B"); } public static void main(String[] args) { System.out.println("main start"); new HelloB(); new HelloB(); System.out.println("main end"); } } public static void main(String[] args) { one(); two(); three(); four(); five(); six(); seven(); eight(); nine(); ten(); Null.main(null); StringExample1.main(null); StringExample2.main(null); ForLoop.main(null<mark style="color:transparent">来源gaodaimacom搞#代%码网</mark>); HelloB.main(null); } } 

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持gaodaima搞代码网

以上就是15道非常经典的Java面试题 附详细答案的详细内容,更多请关注gaodaima搞代码网其它相关文章!


搞代码网(gaodaima.com)提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发送到邮箱[email protected],我们会在看到邮件的第一时间内为您处理,或直接联系QQ:872152909。本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:15道非常经典的Java面试题 附详细答案
喜欢 (0)
[搞代码]
分享 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址