你会被哪些面试中的Java问题难住?
在Java面试中,你通常会被哪些问题难住呢?尤其是当面试官问到一些专业性比较强的问题,考验你基础知识掌握得是否扎实的时刻到了,这可不是能侥幸过关的环节。所以接下来,千锋教育哈尔滨校区的老师就为同学们普及在面试中常见的Java技术相关知识,希望对即将面试的同学有所帮助。
1、String和StringBuffer的区别?
答:String是不可变的对象,每次对String类型进行改变都相当于产生了一个新的对象,StringBuffer是可变的字符序列,所以如果要经常改变某个字符串的话建议使用StringBuffer。
2、同步和异步,分别在什么情况下使用?
答:如果数据将在线程间共享,如正在写的数据以后可能被另一个线程读到,或者正在读的数据可能已经被另一个线程写过了,那么这些数据就是共享数据,必须进行同步存取;当应用程序在对象上调用了一个需要花费很长时间来执行的方法,并且不希望让程序等待方法的返回时,就应该使用异步。一般来讲,在多数情况下采用异步往往更有效率。
3、Error和Exception的区别?
答:Error类一般指与虚拟机相关的问题,比如系统崩溃、虚拟机错误、内存空间不足,对于这种错误导致的应用程序中断,仅靠程序本身无法恢复和预防,遇到这样的错误,建议让程序终止;Exception则表示程序可以处理的异常,遇到这类异常,应该尽可能处理异常,使程序恢复运行,而不应该随意终止异常。
4、EJB和JavaBean的区别?
答:EJB不是一般的JavaBean,EJB是企业级的JavaBean,EJB一共分为3种:实体Bean、消息Bean和会话Bean。书写EJB要遵循一定的规范,另外要运行EJB,你需要有相应的EJB容器,比如WebLogic、jboss等,而JavaBean不需要,只需要安装Tomcat就可以了。EJB用于服务端的应用开发,而JavaBean则用于客户端应用开发。
通过以上几道面试题,我们可以看到,在学习Java的过程中,通过对比进行理解和记忆很重要。那么在学习的过程中,我们更需要有一系列针对的指导,才能更好地掌握技术知识。千锋教育哈尔滨校区JavaEE+分布式开发课程9月开班报名正在火热进行中,如果你想成为Java行业精英,那么来千锋教育,全程高品质面授课程让你体验从小白到高级程序员的完美进阶。