A. java中錯誤(error)和異常(exception)有什麼主要區別
Error(錯誤)表示系統級的錯誤和程序不必處理的異常,一般是指與虛擬機相關的問題,是java運行環境中的內部悔碼猛錯誤或者硬體問題。比如:內存資源不足等。對於這種錯誤,程序基本無能為力,除了退出運行外別無選擇,它是由Java虛擬碧橋機拋出的。x0dx0ax0dx0aException(違例)表示需要捕捉或者需要程序進行處理的異常,它處理的是因為程模物序設計的瑕疵而引起的問題或者在外的輸入等引起的一般性問題,是程序必須處理的。x0dx0aException又分為運行時異常,受檢查異常。x0dx0a運行時異常,表示無法讓程序恢復的異常,導致的原因通常是因為執行了錯誤的操作,建議終止程序,因此,編譯器不檢查這些異常。x0dx0a受檢查異常,是表示程序可以處理的異常,也即表示程序可以修復(由程序自己接受異常並且做出處理),所以稱之為受檢查異常。
B. 從java程序里反編譯出來,一字未改再重新編譯提示100多個錯誤
反編譯的程序,不能保證100%的正確的,所以你再編譯,很明顯問題出來了。
有些地方應該還要手動修改一下。
C. 我把一個class文件反編譯成java文件後再反編譯回去,提示錯誤!
反編譯後的java文件引用了你現在編譯環境中沒有的包,而這些包是原作者在開發的時候專用配置好的,所以你編譯的時候 某些import就會報錯了
D. 涓轟粈涔堝湪Linux鐜澧冧笅緙栬瘧java紼嬪簭浼氬嚭鐜癰us_ error閿欒錛燂紵錛
鏈榪戝湪璁哄潧涓婄湅鍒頒竴涓紼嬪簭鍛樺湪璇㈤棶Bus Error鐨勯棶棰樸備粬鏈変竴涓闈炲父綆鍗曠殑嫻嬭瘯紼嬪簭錛屽皢涓涓猻hort鏁扮粍涓絎浜屼釜鎴愬憳鍙橀噺鐨勫湴鍧闄勭粰涓涓猧nt鍨嬬殑鎸囬拡錛屾帴鐫緇欒ユ寚閽堣祴鍊礆紝澶ц嚧浠g爜濡備笅錛
short array[10];
int * p = (int *) &array[1];*p = 1;
榪愯岀殑騫沖彴鏄瘲olaris for SPARC錛屼嬌鐢ㄧ殑緙栬瘧鍣ㄦ槸GCC錛岀▼搴忔墽琛屽埌鎸囬拡璧嬪肩殑鏃跺欑殑鍑虹幇Bus Error鍑洪敊淇℃伅錛岀▼搴廲oremp銆備粬瑙夊緱闈炲父濂囨錛屼唬鐮佸湪X86騫沖彴榪愯岀殑寰堝ソ銆傚叾瀹炶繖涓闂棰樺畬鍏ㄦ槸鐢變簬CPU紜浠朵笉鍚屾墍閫犳垚鐨勩
Bus Error閫氬父閮芥槸鍥犱負闈炲歸綈璁塊棶閫犳垚鐨勩侰PU鍦ㄨ捐′笂涓轟簡鎬ц兘涓婄殑鑰冭檻錛岃佹眰寰呰塊棶錛屾搷浣滅殑鏁版嵁鍦板潃閮借佸歸綈銆傚傛灉鍙戠幇娌℃湁瀵歸綈鐨勮塊棶錛屽氨浼氬悜褰撳墠榪涚▼鍙戝嚭SIGBUS淇″彿錛屼嬌紼嬪簭宕╂簝銆俁ISC鍖呮嫭SPARC閮芥槸榪欑嶇被鍨嬬殑鑺鐗囥傝孹86鏋舵瀯灝辨病鏈夎繖縐嶅歸綈瑕佹眰銆傛墍浠ヨ繖孌典唬鐮佸湪Solaris 10 for X86涓嬮潰娌℃湁闂棰橈紝褰撶劧榪欐槸鏈夋ц兘鐨勪唬浠楓侭us Error涔熸湁鍙鑳芥槸鍥犱負鏈哄櫒鐗╃悊闂棰樻垨鑰呰塊棶鏃犳晥鐗╃悊鍦板潃錛屼絾榪欑嶆儏鍐甸潪甯稿皯瑙併
涓婇潰鐨勪唬鐮佹f槸榪欑嶉潪瀵歸綈璁塊棶閫犳垚鐨凚us Error銆俿hort鏄涓や釜瀛楄妭錛屽叾鍦板潃鍋忕Щ閲忓繀鏄2鐨勫嶆暟銆傝屽逛簬int鎸囬拡鏉ヨ達紝闇瑕佸嚲縐婚噺鍦板潃鏄4鐨勫嶆暟鐨勬暟鎹錛屾墍浠ョ洿鎺ョ敤int鎸囬拡鏉ユ搷浣滃湴鍧錛屽氨寰堟湁鍙鑳藉艱嚧緋葷粺鍙戝嚭SIGBUS淇″彿錛岀▼搴忓穿婧冦
榪欐電▼搴忓傛灉鐢⊿un Studio緙栬瘧鍣ㄧ殑璇濓紝榪愯屽氨娌℃湁闂棰樸傝繖鏄鍥犱負Sun Studio榛樿ゅ32浣嶇紪璇戜嬌鐢ㄧ殑鍙傛暟鏄-xmemalign=8i錛屽叾涓璱閫夐」璁劇疆鏄庣『涓嶄細浜х敓榪欑峉IGBUS淇″彿銆備笉榪囧傛灉緙栬瘧鎴64浣嶇▼搴忥紝Sun Studio浣跨敤鐨-xmemalign=8s錛屽叾涓璼閫夐」璁劇疆鎰忓懗瀵硅繖縐嶉潪瀵歸綈璁塊棶浜х敓SIGBUS淇″彿錛屼粛鏃т細閬囧埌榪欎釜閿欒銆
褰撶劧浣犱篃鍙浠ュ潥鎸佸湪SPARC涓婁嬌鐢℅CC鍘葷紪璇戣繖縐嶄唬鐮併侴CC鏈変竴涓猅ype Attributes鐗規э紝鍦ㄩ渶浜哄伐瀵歸綈鐨勫彉閲忓悗鍔犱笂錛歘_attribute__ ((aligned (4))); 4灝辨槸鎸囧畾鍋忕Щ閲忋傛瘮濡傦細
short array[10] __attribute__ ((aligned (4)))錛
涓嶈繃榪欎釜灞炴у彧瀵筁inker榪炴帴鍣ㄥ彲瑙佺殑鍙橀噺鏈夋晥錛屼篃灝辨槸璇村筶ocal variable鏃犳晥銆傝屼笖榪欑嶇壒鎬у彧鑳界収欏懼埌璇ユ暟緇勶紝鍗崇涓涓鍏冪礌錛屽苟涓嶄負鏁扮粍鐨勬瘡涓鎴愬憳璁劇疆鍋忕Щ閲忋
濡傛灉涓瀹氳侀拡瀵筶ocal variable鎴栬呮暟緇勭殑姣忎釜鎴愬憳榪涜屽嚲縐婚噺璁劇疆錛屽彲浠ヨ冭檻瀹氫箟涓涓猽nion鐨勭被鍨:union {short s;int i;}
E. 為什麼將class反編譯為java後,java直接編譯時有錯誤
midlet不存在? 如果你用的是Eclipse那你在配置環境時有問題 沒關聯EclipseMe 和關聯WTK MIDletStateChangeException應該是有異常
反編譯的軟體一般都會使用如a b c之類的變數名 導致很多類的情況下容易重名導致變數混亂 最好改成自己習慣的變數名
至於環境變數的配置按這個來
右鍵點擊我的電腦--->屬性--->高級--->環境變數--->系統變數--->新建
path: C:\j2sdk1.4.2_05\bin
classpath: .;C:\j2sdk1.4.2_05\lib\dt.jar;C:\j2sdk1.4.2_05\lib\tools.jar 確定
改了還不行的話把代碼貼出來看看 祝你走運~~~