上期,南京万和Java培训分享了南京Java培训分享Java程序员面试经典四十问(一),今天接着和大家讨论Java面试中的各种不同类型的面试题,它们可以让雇主测试应聘者的Java和通用的面向对象编程的能力。
1、java中有没有引用传递?
答:没有,java中只有值传递!虽然我们将一个“对象引用”作为方法参数时,可以在方法中对该引用对应的对象进行修改,并返回给方法调用者,但是我们永远无法改变这个引用本身的值!
2、try{ }里有一个return语句,那么紧跟在这个try后的finally{ }里的code会不会被执行,什么时候被执行?
答:会执行,在return前执行。但是如果此时在finally{}后还有语句,则这些语句不会再执行!
3、在try - catch 块中遇到System.exit(0)还会不会执行finally中的代码?
答:不会再执行!因为exit(0)的作用是终止当前虚拟机!有疑惑?咨询南京万和Java培训。
4、当try后面有多个语句块时,catch异常块的顺序应该遵循什么原则?
答:必须保证子Exception类放在父Exception类的前面,这样才可能保证产生的每个异常能分别被捕捉到。也可由同一异常进行处理,前提是这个共用的异常应该是所有这些该被捕获的异常的父类!
5、for-each语句是为处理哪两种类型提出的?
答: 数组和集合.利用该语句消除了程序员需要考虑数组和集合长度的麻烦!
6、int和String,Integer和String以及int和Integer相互转化的方法分别是什么?
答: int--------->String---------------------:静态方法String.valueOf()
String---------->int--------------------:静态方法Integer.parseInt()
Integer-------->String----------------:x.toString()方法
//x为一个Integer的实例
String---------->Integer--------------:静态方法Integer.valueOf()
int-------------->Integer--------------:new Integer(int x)
Integer-------->int--------------------:x.intValue()
//其中x是一个Integer的实例
7、请对比一下ArrayList和LinkedList?
答: ArrayList 数组 查询快 增删操作慢
LinkedList 链表 查询慢 增删操作快 更多内容,请咨询南京万和Java培训。
8、先后执行下面三条语句int a=5;int b=a<<33;System.out.println(b);b的最终结果是多少?
答:结果b=10,移位运算时系统会以32为基数对33求余!
9、接口中是否可以有静态方法?
答:不可以!
10、数组有没有length()这个方法? String有没有length()这个方法?
答:数组没有length()这个方法,有length的属性;String有length()这个方法。