第一,谈谈final, finally, finalize的区别。 

    第二,Anonymous Inner Class (匿名内部类) 是否可以extends(继承)其它类,是否可以implements(实现)interface(接口)? 

    第三,Static Nested Class 和 Inner Class的不同,说得越多越好(面试题有的很笼统)。 

    第四,&和&&的区别。 

    第五,HashMap和Hashtable的区别。 

    第六,Collection 和 Collections的区别。 

    第七,什么时候用assert. 

    第八,GC是什么? 为什么要有GC? 

    第九,String s = new String("xyz");创建了几个String Object? 

    第十,Math.round(11.5)等於多少? Math.round(-11.5)等於多少? 

    第十一,short s1 = 1; s1 = s1 + 1;有什么错? short s1 = 1; s1 += 1;有什么错? 

    第十二,sleep() 和 wait() 有什么区别? 

    第十三,Java有没有goto? 

    第十四,数组有没有length()这个方法? String有没有length()这个方法? 

    第十五,Overload和Override的区别。Overloaded的方法是否可以改变返回值的类型? 

    第十六,Set里的元素是不能重复的,那么用什么方法来区分重复与否呢? 是用==还是equals()? 它们有何区别? 

    第十七,给我一个你最常见到的runtime exception. 

    第十八,error和exception有什么区别? 

    第十九,List, Set, Map是否继承自Collection接口? 

    第二十,abstract class和interface有什么区别? 

    第二十一,abstract的method是否可同时是static,是否可同时是native,是否可同时是synchronized? 

    第二十二,接口是否可继承接口? 抽象类是否可实现(implements)接口? 抽象类是否可继承实体类(concrete class)? 

    第二十三,启动一个线程是用run()还是start()? 

    第二十四,构造器Constructor是否可被override? 

    第二十五,是否可以继承String类? 

    第二十六,当一个线程进入一个对象的一个synchronized方法后,其它线程是否可进入此对象的其它方法? 

    第二十七,try {}里有一个return语句,那么紧跟在这个try后的finally {}里的code会不会被执行,什么时候被执行,在return前还是后? 

    第二十八,编程题: 用最有效率的方法算出2乘以8等於几? 

    第二十九,两个对象值相同(x.equals(y) == true),但却可有不同的hash code,这句话对不对? 

    第三十,当一个对象被当作参数传递到一个方法后,此方法可改变这个对象的属性,并可返回变化后的结果,那么这里到底是值传递还是引用传递? 

    第三十一,swtich是否能作用在byte上,是否能作用在long上,是否能作用在String上? 

    第三十二,编程题: 写一个Singleton出来。