問題實錄(4)
發(fā)表時間:2024-06-16 來源:明輝站整理相關(guān)軟件相關(guān)文章人氣:
[摘要]61. 問:book mybook=new book(bookid);book是servlet,出錯。 答: book是servlet,能book mybook=new book(bookid); 說明自己實現(xiàn)了servlet容器?不然,servlet能讓你自己去調(diào)用? ...
61. 問:book mybook=new book(bookid);book是servlet,出錯。
答:
book是servlet,能book mybook=new book(bookid);
說明自己實現(xiàn)了servlet容器?不然,servlet能讓你自己去調(diào)用?
servlet如果調(diào)用其實和EJB連1%的區(qū)別都沒有,它們都是自己繼承或?qū)崿F(xiàn)一些接口,在這些父類或接口中實現(xiàn)了如果和容器\"打交道"的方法,然后容器調(diào)用這些方法來管理它,讓它生成實例,池化,鈍化,銷毀,再生等.所以這樣寫是錯誤的。
62. 問:給定一個字符串5*(5+9)/7怎樣計算出結(jié)果?
答:
可有兩種方法
1。用堆棧完成
2。最簡單的方法,不用編程,如果有任何一個數(shù)據(jù)庫的化,
用select (5*(5+9)/7) from oneTable
63. 問:如何實現(xiàn)遞交表單內(nèi)容的加密解密?
答:
如果你用IE目前只能用SSL協(xié)議,這一層不要你考慮,否則只你用你自己的工具加密傳輸,接收后再解密友,至于如何加解,如果要和公認的系統(tǒng)結(jié)合,就用通用的MD5,RAS等公開算法,如果你只是自己傳自己解,你隨便按你的想法把數(shù)據(jù)加上一些東西,取回來按規(guī)則減掉這些東西,我敢保證除你自己沒有任何人能知道解密方法.
64. 問:為什么Integer.parseInt("+1");會拋出NumberFormatException的異常?
答:因為"+"運行算在JAVA中被重載.系統(tǒng)無法確定你用的是算術(shù)加還是字符+。
這一點可以在JAVASCRIPT中更好地理解:
<form name="t"><input name=s value=1234></form>
var a = document.t.s.value+1;
這時a = 12345,因為document.t.s.value作為字符串.
但var a = document.t.s.value-1;
a 就是1233,因為系統(tǒng)知道-運算肯定是算術(shù)運行.所以把document.t.s.value
轉(zhuǎn)換成數(shù)字.
65. 問:hashCode() 有什么用為什么有時候需要覆蓋Object里的hashcode()方法?
答:這就是這個對象的身份證啊,要不如何區(qū)分哪個對象。
66. 問:怎樣在tomcat中實現(xiàn)一個定時執(zhí)行的東東?
答:
在應(yīng)用程序啟動時自動運行。servlet2.3中定義了ServletListener,監(jiān)聽Servlet Context的啟動或則關(guān)閉(可在配置文件中配置),啟動時觸發(fā)一個守護程序的運行(可以實現(xiàn)java.util.Timer或則javax.swing.Timer).
67. 問:程序可以輸出自己嗎?
答:孔德悖論這個非常有名的法則.就是說任何程序都不可能輸出自己.
68. 問:能夠把字符轉(zhuǎn)化成ASCII碼?比如將 A 轉(zhuǎn)化成 65?
答:
int a='A';
out.println(a);
69. 問:如何區(qū)分輸入的文字中的全角與半角?
答:由于不能分辨出全角和半角字符的值有什么規(guī)律,只好把全角符號牧舉出來了.
70. 問:用戶注冊后的自動發(fā)信程序該怎么做?
答:
這種發(fā)信程序不考慮性能,因為不可能1秒就有一個人注冊,我們說的考慮性能的發(fā)信程序是指上百萬封信在隊列里要不停發(fā)送的那種,象你這個隨便怎么寫一個程序都行,沒有必要用JAVAMAIL.只要指定一個發(fā)信的服務(wù)器然后用cocket連它的25口就行了.
自己用SOCKET連SMTP的25口發(fā)一封信就好象兩個鄰居之間送一樣東西,直接遞過去得了,用JAVAMAIL,消息機制就是你把這個東西從郵局寄給你的鄰居了.