亞信聯(lián)創(chuàng)java筆試題和面試題答案(一)

思而思學(xué)網(wǎng)

歡迎不想錯過亞信聯(lián)創(chuàng)java筆試題的朋友收藏和分享,具體內(nèi)容如下,大家敬請閱讀:
1、GC是什么?常用的兩種方法是什么?

答:

(1)GC是垃圾收集的意思(Garbage Collection),內(nèi)存處理是編程人員容易出現(xiàn)問題的地方,忘記或者錯誤的內(nèi)存回收會導(dǎo)致程序或系統(tǒng)的不穩(wěn)定甚至崩潰,Java提供了GC功能可以自動監(jiān)測對象是否超過作用域從而達(dá)到自動回收內(nèi)存的目的,Java語言沒有提供釋放已分配內(nèi)存的顯示操作方法。

(2)System.gc()用來強(qiáng)制立即回收垃圾,即釋放內(nèi)存。

java對內(nèi)存的釋放采取的垃圾自動回收機(jī)制,在編程的時候不用考慮變量不用釋放內(nèi)存,java虛擬機(jī)可以自動判斷出并收集到垃圾,但一般不會立即釋放它們的內(nèi)存空間,當(dāng)然也可以在程序中使用System.gc()來強(qiáng)制垃圾回收,但是要注意的是,系統(tǒng)并不保證會立即進(jìn)行釋放內(nèi)存。

gc首先要判斷該對象是否是時候可以收集。兩種常用的方法是引用計數(shù)和對象的引用遍歷。

2、線程常用的方法是什么?

答:

Thread類的常用方法:

static Thread currentThread() //靜態(tài)方法,通過這個方法可以獲得主線程的引用,從而達(dá)到操作主線程的目的。

static int activeCount() //靜態(tài)方法,獲得當(dāng)前活動線程數(shù)量

long getId() //獲得當(dāng)前線程的id

String getName() //獲得當(dāng)前線程的名字

int getPriority() //獲得優(yōu)先級

boolean isAlive() //當(dāng)前線程是否處于活動狀態(tài)。

boolean isDaemon() //是否為守護(hù)線程

void run() //run()方法,我們用線程,主要就是對run()方法的重寫

void start() //使該線程開始執(zhí)行;Java虛擬機(jī)調(diào)用該線程run()方法。

void sleep() //使當(dāng)前線程休眠,以執(zhí)行其他線程,如Thread.sleep(1000)休眠1秒

3、Sleep()和wait()的區(qū)別?

答:

sleep()方法是使線程停止一段時間的方法。在sleep時間間隔期滿后,線程不一定立即恢復(fù)執(zhí)行。因為在那個時刻,其他線程可能正在運行而且沒有被調(diào)度為放棄執(zhí)行,除非“醒來”的線程有更高的優(yōu)先級,或者正在運行的線程因為其他原因而阻塞。

wait()是線程交互時,如果線程對一個同步對象x發(fā)出一個wait()調(diào)用,該線程會暫停執(zhí)行,被調(diào)用對象進(jìn)入等待狀態(tài),直到被喚醒或等待時間到。

4、EJB和JavaBean都是什么?

答:

javabean是客戶端組件,EJB是服務(wù)器端組件。

其實EJB和javabean最根本的區(qū)別是分布性。

5、EJB都有哪些構(gòu)成?

答:

Session Bean,Entity Bean,Message Driven Bean.

6、Servlet的生命周期,比CGI有什么優(yōu)點?

答:

web容器加載servlet,生命周期開始。通過調(diào)用servlet的init()方法進(jìn)行servlet的初始化。通過調(diào)用service()方法實現(xiàn),根據(jù)請求的不同調(diào)用不用的do()方法。結(jié)束服務(wù),web容器調(diào)用servlet的destroy()方法。

Servlet是Java平臺上的CGI技術(shù)。Servlet在服務(wù)器端運行,動態(tài)地生成Web頁面,與傳統(tǒng)的CGI和許多其他類似CGI的技術(shù)相比,JavaServlet具有更高的效率并更容易使用。對于Servlet,重復(fù)的請求不會導(dǎo)致同一程序的多次轉(zhuǎn)載,它是依靠線程的方式來支持并訪問的。

7、存儲過程和函數(shù)的區(qū)別?

答:

本質(zhì)上沒有區(qū)別。只是函數(shù)有只能返回一個變量的限制,而存儲過程可以返回多個。函數(shù)是可以嵌入在sql中使用的,可以在select中調(diào)用,而存儲過程不行。執(zhí)行的本質(zhì)都是一樣。函數(shù)限制比較多,比如不能用臨時表,只能用表變量。還有一些函數(shù)都不可用等等,而存儲過程的限制相對就比較少。

8、Java Server Page 和 servlet的聯(lián)系與區(qū)別?

答:

JSP在本質(zhì)上就是servlet,但兩者的創(chuàng)建方式不一樣。

servlet完全是Java程序代碼構(gòu)成的,擅長流程控制和事務(wù)處理,通過servlet來生成動態(tài)網(wǎng)頁很不直觀。

JSP是由HTML代碼和JSP表情構(gòu)成,可以方便地編寫動態(tài)網(wǎng)頁。

因此實際應(yīng)用中采用servlet來控制業(yè)務(wù)流程,而采用JSP來生成動態(tài)網(wǎng)頁,JSP是servlet技術(shù)的拓展,本質(zhì)上就是Servlet的簡易方式,JSP編譯后是“類servlet”。

熱門推薦

最新文章