21届校招9K面试Java开发高频基础题(最近面试经验)
1.说一下Java集合吧?
答:集合分为两大类,一类是collection接口下的set集合、list集合,另一类是map接口下的map集合。再分别细说set、list、map接口下有那些具体的实现类,每个实现类之间的底层原理、优缺点、线程是否安全、与其他集合的区别。比如ArrayList和Vactor,两者的底层实现原理都是数组,优点都是可以根据下表来快速查找元素,缺点是删除和插入需要移动大量的元素,ArrayList是线程不安全的,而Vactor是线程安全的。照着这个思维逻辑说下去,基本可以说上半小时,说到面试官叫停为止。
2.多线程的创建方式?
答:最基本的两个必须回答,一个是继承Thread类重写run方法,另一个是实现Runable接口;当然还有其他的比如线程池、内部类、Callable等等看自己掌握多少就说多少吧。
3.线程状态转换?
答:既然问了线程,线程的五种状态转换也是必问的问题。创建、就绪、运行
、阻塞、结束,理解他们就比较好组织语言表达了。
1.说一下Java集合吧?
答:集合分为两大类,一类是collection接口下的set集合、list集合,另一类是map接口下的map集合。再分别细说set、list、map接口下有那些具体的实现类,每个实现类之间的底层原理、优缺点、线程是否安全、与其他集合的区别。比如ArrayList和Vactor,两者的底层实现原理都是数组,优点都是可以根据下表来快速查找元素,缺点是删除和插入需要移动大量的元素,ArrayList是线程不安全的,而Vactor是线程安全的。照着这个思维逻辑说下去,基本可以说上半小时,说到面试官叫停为止。
2.多线程的创建方式?
答:最基本的两个必须回答,一个是继承Thread类重写run方法,另一个是实现Runable接口;当然还有其他的比如线程池、内部类、Callable等等看自己掌握多少就说多少吧。
3.线程状态转换?
答:既然问了线程,线程的五种状态转换也是必问的问题。创建、就绪、运行
、阻塞、结束,理解他们就比较好组织语言表达了。
全部评论
相关推荐