- 相關(guān)推薦
Java如何支持I18N?
Java如何支持I18N?以下是小編為解答大家的問(wèn)題而收集整理的內(nèi)容,歡迎閱讀學(xué)習(xí)!更多內(nèi)容請(qǐng)關(guān)注應(yīng)屆畢業(yè)生考試網(wǎng)!
不支持I18N的例子 – NoI18NSample.java
支持I18N的例子
我們需要將硬編碼文本轉(zhuǎn)移到外部的資源文件
編寫(xiě)MessagesBundle.properties
編寫(xiě)MessagesBundle_zh_CN.properties
編寫(xiě)MessagesBundle_en_US.properties
編寫(xiě)I18NSample.java
運(yùn)行I18NSample.java
亂碼?
因?yàn)橘Y源文件必須是Latin-1或Unicode編碼(如\udddd)的字符
使用native2ascii工具,將中文資源文件進(jìn)行轉(zhuǎn)換
Java支持I18N的編碼過(guò)程總結(jié):
1、創(chuàng)建屬性文件(可能要用native2ascii工具轉(zhuǎn)換)
2、定義Locale對(duì)象
3、創(chuàng)建一個(gè)ResourceBundle對(duì)象
ResourceBundle對(duì)象用于分離跟本地相關(guān)的數(shù)據(jù)
如果找不到相應(yīng)語(yǔ)言或國(guó)家代碼的屬性文件,將使用默認(rèn)的屬性文件(即沒(méi)有標(biāo)識(shí)語(yǔ)言和國(guó)家代碼的屬性文件:MessagesBundle.properties)
其創(chuàng)建方式如下:
message = ResourceBundle.getBundle(“MessagesBundle”, currentLocale);
第一個(gè)參數(shù),表示要從哪些資源屬性文件中(MessagesBundle_XX.properties)獲取數(shù)據(jù)
第二個(gè)參數(shù),是一個(gè)Locale對(duì)象,表示要選擇哪個(gè)資源屬性文件
4、從ResourceBundle對(duì)象中獲取數(shù)據(jù)
【相關(guān)閱讀】Java面向?qū)ο竺嬖囶}
1. super()與this()的區(qū)別?
2. 作用域public,protected,private,以及不寫(xiě)時(shí)的區(qū)別?
3. 編程輸出如下圖形。
4. JAVA的事件委托機(jī)制和垃圾回收機(jī)制
5. 在JAVA中,如何跳出當(dāng)前的多重嵌套循環(huán)?
6. 什么是java序列化,如何實(shí)現(xiàn)java序列化?(寫(xiě)一個(gè)實(shí)例)
7. 一個(gè)”.java”源文件中是否可以包括多個(gè)類(不是內(nèi)部類)?有什么限制?
8. 排序都有哪幾種方法?請(qǐng)列舉。用JAVA實(shí)現(xiàn)一個(gè)快速排序?
9. Overload和Override的區(qū)別。Overloaded的方法是否可以改變返回值的類型?
10. Final類有什么特點(diǎn)?
11. 繼承時(shí)候類的執(zhí)行順序問(wèn)題,一般都是選擇題,問(wèn)你將會(huì)打印出什么?
12. 內(nèi)部類的實(shí)現(xiàn)方式?
13. 用JAVA實(shí)現(xiàn)一種排序,JAVA類實(shí)現(xiàn)序列化的方法(二種)?
14. 如在COLLECTION框架中,實(shí)現(xiàn)比較要實(shí)現(xiàn)什么樣的接口?
15. 用插入法進(jìn)行排序代碼如下
16. 編程:編寫(xiě)一個(gè)截取字符串的函數(shù),輸入為一個(gè)字符串和字節(jié)數(shù),輸出為按字節(jié)截取的字符串。 但是要保證漢字不被截半個(gè),如”我ABC”4,應(yīng)該截為”我AB”,輸入”我ABC漢DEF”,6,應(yīng)該輸出為”我ABC”而不是”我ABC+漢的半個(gè)”。
15、Java編程,打印昨天的當(dāng)前時(shí)刻
16、文件讀寫(xiě),實(shí)現(xiàn)一個(gè)計(jì)數(shù)器
17、指出下面程序的運(yùn)行結(jié)果。
18、抽象類和接口的區(qū)別?
19、什么是類的返射機(jī)制?
20、類的返射機(jī)制中的包及核心類?
21、得到Class的三個(gè)過(guò)程是什么?
22、如何喚起類中的一個(gè)方法?
23、如何將數(shù)值型字符轉(zhuǎn)換為數(shù)字(Integer,Double)?
24、如何將數(shù)字轉(zhuǎn)換為字符?
25、如何去小數(shù)點(diǎn)前兩位,并四舍五入。
26、如何取得年月日,小時(shí)分秒?
27、如何取得從1970年到現(xiàn)在的毫秒數(shù)
28、如何獲取某個(gè)日期是當(dāng)月的最后一天?
29、如何格式化日期?
30、編碼轉(zhuǎn)換,怎樣實(shí)現(xiàn)將GB2312編碼的字符串轉(zhuǎn)換為ISO-8859-1編碼的字符串。
32、String s = new String(“xyz”);創(chuàng)建了幾個(gè)String Object?
33、float型float f=3.4是否正確?
35、說(shuō)出一些常用的類,包,接口,請(qǐng)各舉5個(gè)
36、java中會(huì)存在內(nèi)存泄漏嗎,請(qǐng)簡(jiǎn)單描述。
37、java中實(shí)現(xiàn)多態(tài)的機(jī)制是什么?
38、垃圾回收器的基本原理是什么?垃圾回收器可以馬上回收內(nèi)存嗎?有什么辦法主動(dòng)通知虛擬機(jī)進(jìn)行垃圾回收?
39、靜態(tài)變量和實(shí)例變量的區(qū)別?
41、是否可以從一個(gè)static方法內(nèi)部發(fā)出對(duì)非static方法的調(diào)用?
42、寫(xiě)clone()方法時(shí),通常都有一行代碼,是什么?
43、JAVA語(yǔ)言如何進(jìn)行異常處理,關(guān)鍵字:throws,throw,try,catch,finally分別代表什么意義?在try塊中可以拋出異常嗎?
45、冒泡排序法
46、String and StringBuffer的區(qū)別?
47、用java代碼編寫(xiě)堆棧
48、集合的作用是什么?
49、集合的通用方法有那些?通用方法是什么?(操作)
50、說(shuō)出ArrayList,Vector, LinkedList的存儲(chǔ)性能和特性HashMap和Hashtable的區(qū)別
51、Collection 和 Collections的區(qū)別。
52、Set里的元素是不能重復(fù)的,那么用什么方法來(lái)區(qū)分重復(fù)與否呢? 是用==還是equals()? 它們有何區(qū)別?用contains來(lái)區(qū)分是否有重復(fù)的對(duì)象。還是都不用。
53、List, Set, Map是否繼承自Collection接口?
54、面向?qū)ο蟮奶卣饔心男┓矫?/span>
55、String是最基本的數(shù)據(jù)類型嗎?
56、int 和 Integer 有什么區(qū)別?
57、運(yùn)行時(shí)異常與一般異常有何異同?
58、&和&&的區(qū)別?
59、final, finally, finalize的區(qū)別?
63、Static Nested Class 和 Inner Class的不同?
64、什么時(shí)候用assert?
65、GC是什么? 為什么要有GC?
66、short s1 = 1; s1 = s1 + 1;有什么錯(cuò)? short s1 = 1; s1 += 1;有什么錯(cuò)?
67、Math.round(11.5)等於多少? Math.round(-11.5)等於多少?
68、Java有沒(méi)有g(shù)oto?
69、給我一個(gè)你最常見(jiàn)到的runtime exception
70、接口是否可繼承接口? 抽象類是否可實(shí)現(xiàn)(implements)接口? 抽象類是否可繼承實(shí)體類(concrete class)?
71、abstract的method是否可同時(shí)是static,是否可同時(shí)是native,是否可同時(shí)是synchronized?
72、數(shù)組有沒(méi)有l(wèi)ength()這個(gè)方法? String有沒(méi)有l(wèi)ength()這個(gè)方法?
73、構(gòu)造器Constructor是否可被override?
74、是否可以繼承String類?
75、swtich是否能作用在byte上,是否能作用在long上,是否能作用在String上?
76、try {}里有一個(gè)return語(yǔ)句,那么緊跟在這個(gè)try后的finally {}里的code會(huì)不會(huì)被執(zhí)行,什么時(shí)候被執(zhí)行,在return前還是后?
77、編程題: 用最有效率的方法算出2乘以8等於幾?
78、兩個(gè)對(duì)象值相同(x.equals(y) == true),但卻可有不同的hash code,這句話對(duì)不對(duì)?
79、當(dāng)一個(gè)對(duì)象被當(dāng)作參數(shù)傳遞到一個(gè)方法后,此方法可改變這個(gè)對(duì)象的屬性,并可返回變化后的結(jié)果,那么這里到底是值傳遞還是引用傳遞?
80、四種會(huì)話跟蹤技術(shù)
81、編程題: 寫(xiě)一個(gè)Singleton出來(lái)。
83、Java中的異常處理機(jī)制的簡(jiǎn)單原理和應(yīng)用。
84、垃圾回收的優(yōu)點(diǎn)和原理。并考慮2種回收機(jī)制。
85、描述一下JVM加載class文件的原理機(jī)制?
86、char型變量中能不能存貯一個(gè)中文漢字?為什么?
88、寫(xiě)一個(gè)程序,從文件(c:\test.txt)中查出字符串”mobnet”出現(xiàn)的次數(shù)?
【Java如何支持I18N?】相關(guān)文章:
java如何構(gòu)造12-11
新手如何學(xué)習(xí)Java07-06
如何學(xué)習(xí)JAVA開(kāi)發(fā)04-26
如何創(chuàng)建java包03-27
Java的就業(yè)前景如何03-23
如何創(chuàng)建java包名03-28
如何搭建Java程序開(kāi)發(fā)環(huán)境12-03
java如何給時(shí)間格式化12-11