java程序設計題庫
『壹』 求一些java基礎的程序練習題目~~~~
問題
• can not read xxx.java
• 怎樣讓char類型的東西轉換成int類型?
• 我的applet原先好好的, 一放到web server就會有問題,為什麼?
• 怎樣在 Applet中用某個圖形塗滿整個背景?
• 怎樣比較兩個類型為String的字元串?
• 怎樣將浮點數(float)相加 ? Float 好像沒有辦法?
• 如何將字串String轉換成整數int?
• 如何將整數 int 轉換成字串 String?
• 哪位可以推薦幾個比較好的java/jsp論壇?
• JAVA的環境變數 請教一下哪位高手知道JAVA的環境變數怎麼配置?讓它在DOS中運行,我下載的版本是jdk1.5.0_01,系統屬性環境變數中有一個用戶變數和系統變數,該配置在哪個變數中呢?
• C++和JAVA的分別?
• 初學java用那本書好
• 我想學習JAVA編程語言,但不知從啥開始?
• 初學JAVA的人看書參考書最好
• 作用域public,private,protected,以及不寫時的區別
• ArrayList和Vector的區別,HashMap和Hashtable的區別
• char型變數中能不能存貯一個中文漢字?為什麼?
• 繼承時候類的執行順序問題,一般都是選擇題,問你將會列印出什麼?
• 談談final, finally, finalize的區別。
• Anonymous Inner Class (匿名內部類) 是否可以extends(繼承)其它類,是否可以implements(實現)interface(介面)?
• Static Nested Class 和 Inner Class的不同,說得越多越好(面試題有的很籠統)
• &和&&的區別
• HashMap和Hashtable的區別?
• Collection 和 Collections的區別?
• 什麼時候用assert?
• GC是什麼? 為什麼要有GC? (基礎)?
• String s = new String("xyz");創建了幾個String Object?
• Math.round(11.5)等於多少? Math.round(-11.5)等於多少?
• short s1 = 1; s1 = s1 + 1;有什麼錯? short s1 = 1; s1 += 1;有什麼錯?
• Java有沒有goto?
• 數組有沒有length()這個方法? String有沒有length()這個方法?
• Overload和Override的區別。Overloaded的方法是否可以改變返回值的類型?
• Set里的元素是不能重復的,那麼用什麼方法來區分重復與否呢? 是用==還是equals()? 它們有何區別?
• abstract class和interface有什麼區別?
• abstract的method是否可同時是static,是否可同時是native,是否可同時是synchronized?
• 構造器Constructor是否可被override?
• 是否可以繼承String類?
• 當一個線程進入一個對象的一個synchronized方法後,其它線程是否可進入此對象的其它方法?
• try {}里有一個return語句,那麼緊跟在這個try後的finally {}里的code會不會被執行,什麼時候被執行,在return前還是後?
• 當一個對象被當作參數傳遞到一個方法後,此方法可改變這個對象的屬性,並可返回變化後的結果,那麼這里到底是值傳遞還是引用傳遞?
• swtich是否能作用在byte上,是否能作用在long上,是否能作用在String上?
回答
• can not read xxx.java
首先看看你的文件是否保存為.java.txt的類型了(右點文件看屬性里的擴張名) 重新保存 記得此時要把文件名.java加上引號 保存 。
返回頂部
--------------------------------------------------------------------------------
• 怎樣讓char類型的東西轉換成int類型?
char c = 'A';
int i = c;
//反過來只要作強制類型轉換就行了
c = (char) I;
返回頂部
--------------------------------------------------------------------------------
• 我的applet原先好好的, 一放到web server就會有問題,為什麼?
一般來說,從以下方向試試:
確定class文件的格式沒錯——已經編譯過,也沒有損壞的情形;
確定所有用到的class文件放到web server上,少一個都不行;
確定所有的文件名和class名稱一致,特別檢查大小寫有無差錯;
如果程序中用到package,web server上的目錄就要當心了。譬如您在class中宣告了一個叫COM.foo.util的package,那麼web server的applet codebase目錄底下就非得有 COM/foo/util這個子目錄不可。(注意目錄名稱也有大小寫之分);
web server上的文件檔案應該事先設定好。(尤其是search,read和execute許可權)
返回頂部
--------------------------------------------------------------------------------
• 怎樣在 Applet中用某個圖形塗滿整個背景?
在背景建立 Panel 或 Canvas, 然後用圖形填滿它。
返回頂部
--------------------------------------------------------------------------------
• 怎樣比較兩個類型為String的字元串?
在兩個對象之間使用 "==",會將「兩個對象是否有同一reference」的結果傳回。也就是說, 這等同於「兩個對象是否擁有同一地址 (address)」,或者「兩個對象物件是否為同一對象」。如果您的意思是判斷兩個字元串的內容是否相同,那麼應該使用以下的方法才對:
if (s1.equals(s2) )
or if (s1.equalsIgnoreCase(s2) )
or if (s1.startsWith(s2) )
or if (s1.endsWith(s2) )
or if (s1.regionMatches(s1_offset, s2, s2_offset, length) )
or if (s1.compareTo(s2) <0)
返回頂部
--------------------------------------------------------------------------------
• 怎樣將浮點數(float)相加 ? Float 好像沒有辦法?
我猜想您的程式大概寫成這樣:
Float One;
Float Two;
Float Hard = One + Two;
請注意 float 和 Float 是不同的,前者是 Java 基本類型之一, 而後者卻是class。您應該將源代碼改為:
float One;
float Two;
float Hard = One + Two;
或
Float One = new Float(1.0);
Float Two = new Float(2.0);
Float Hard = new Float(One.floatValue() + Two.floatValue());
返回頂部
--------------------------------------------------------------------------------
• 如何將字串String轉換成整數int?
1)int i = Integer.parseInt([String]); 或
i = Integer.parseInt([String],[int radix]);
2)int i = Integer.valueOf(my_str).intValue();
注: 字串轉成Double, Float, Long的方法大同小異。
返回頂部
--------------------------------------------------------------------------------
• 如何將整數 int 轉換成字串 String?
有三種方法:
1)String s = String.valueOf(i);
2)String s = Integer.toString(i);
3)String s = "" + i;
註:Double, Float, Long 轉成字串的方法大同小異。
返回頂部
--------------------------------------------------------------------------------
• 哪位可以推薦幾個比較好的java/jsp論壇?
http://www.it315.org
這個網站是我最近才發現的,雖然內容不多,但是提供的相關java工具挺齊全。還有就是裡面提供了java教學視頻錄象的免費下載,好像一兩周更換一段。個人覺得挺適合初學者的,尤其是那個classpath的設置,講的很透徹,大家有空可以看一看。
java官方站點(英文)
http://java.sun.com
要想了解最新的java動態,下載最新的java相關,比如j2se、j2ee、j2se的最新jdk版本就來這里吧。
java中文站
http://www.java-cn.com
這個可能大家都知道,不用說了,他提供的java資源是最豐富的。注冊論壇是免費的,還送積分,用積分可以下載軟體和電子書等,如果積分用完了,就需要自己發表一些文章來賺新的積分。
中文java網站
http://www.cn-java.com
跟上面站點類似的一個站,宗旨就是:為java愛好者服務。值得一看!
鋒網
http://www.ijsp.net/tech/book/index.jsp
綜合性的java網站,內含「下載中心」、「教程教學」等欄目。
返回頂部
--------------------------------------------------------------------------------
• JAVA的環境變數
請教一下哪位高手知道JAVA的環境變數怎麼配置?讓它在DOS中運行,我下載的版本是jdk1.5.0_01,系統屬性環境變數中有一個用戶變數和系統變數,該配置在哪個變數中呢?
Windows下JAVA環境變數的設置祥解
Windows下JAVA用到的環境變數主要有3個,JAVA_HOME、CLASSPATH、PATH。下面逐個分析。
JAVA_HOME指向的是JDK的安裝路徑,如x:\JDK_1.4.2,在這路徑下你應該能夠找到bin、lib等目錄。值得一提的是,JDK的安裝路徑可以選擇任意磁碟目錄,不過建議你放的目錄層次淺一點,如果你放的目錄很深,比如x:\XXXXXX\xxxxx\XXXX\xxxx\XXXX\xxxx\XXXX\xxx……
那麼,下面的步驟和以後的應用你都要受累了,呵呵。設置方法:
JAVA_HOME=x:\JDK_1.4.2
PATH環境變數原來Windows裡面就有,你只需修改一下,使他指向JDK的bin目錄,這樣你在控制台下面編譯、執行程序時就不需要再鍵入一大串路徑了。設置方法是保留原來的PATH的內容,並在其中加上%JAVA_HOME%\bin
(注,如果你對DOS批處理不了解,你可能不明白%%引起來的內容是什麼意思;其實這里是引用上一步設定好的環境變數JAVA_HOME,你寫成x:\JDK_1.4.2也是可以的;你可以打開一個控制台窗口,輸入echo
%JAVA_HOME%來看一下你的設置結果) :
PATH=%JAVA_HOME%\bin;%PATH%
同樣,%PATH%是引用以前你設置的PATH環境變數,你照抄以前的值就行了。
CLASSPATH環境變數我放在最後面,是因為以後你出現的莫名其妙的怪問題80%以上都可能是由於CLASSPATH設置不對引起的,所以要加倍小心才行。
CLASSPATH=.\;%JAVA_HOME%\lib\tools.jar
首先要注意的是最前面的".\;",如果你看不清,我給你念念——句點反斜杠分號。這個是告訴JDK,搜索CLASS時先查找當前目錄的CLASS文件——為什麼這樣搞,這是由於LINUX的安全機制引起的,LINUX用戶很明白,WINDOWS用戶就很難理解(因為WINDOWS默認的搜索順序是先搜索當前目錄的,再搜索系統目錄的,再搜索PATH環境變數設定的)
,所以如果喜歡盤根究底的朋友不妨研究一下LINUX。
為什麼CLASSPATH後面指定了tools.jar這個具體文件?不指定行不行?顯然不行,行的話我還能這么羅索嘛!:)
這個是由java語言的import機制和jar機制決定的,你可以查資料解決。
呵呵,具體的設定方法: win2k\xp用戶右鍵點擊我的電腦->屬性->高級->環境變數,修改下面系統變數那個框里的值就行了。
win9x用戶修改autoexec.bat文件,在其末尾加入:
set JAVA_HOME=x:\JDK_1.4.2
set PATH=%JAVA_HOME%\bin;%PATH%
set CLASSPATH=.\;%JAVA_HOME%\lib\tools.jar
返回頂部
--------------------------------------------------------------------------------
• C++和JAVA的分別?
JAVA和C++都是面向對象語言。也就是說,它們都能夠實現面向對象思想(封裝,繼乘,多態)。而由於c++為了照顧大量的C語言使用者,
而兼容了C,使得自身僅僅成為了帶類的C語言,多多少少影響了其面向對象的徹底性!JAVA則是完全的面向對象語言,它句法更清晰,規模更小,更易學。它是在對多種程序設計語言進行了深入細致研究的基礎上,據棄了其他語言的不足之處,從根本上解決了c++的固有缺陷。
Java和c++的相似之處多於不同之處,但兩種語言問幾處主要的不同使得Java更容易學習,並且編程環境更為簡單。
我在這里不能完全列出不同之處,僅列出比較顯著的區別:
1.指針
JAVA語言讓編程者無法找到指針來直接訪問內存無指針,並且增添了自動的內存管理功能,從而有效地防止了c/c++語言中指針操作失誤,如野指針所造成的系統崩潰。但也不是說JAVA沒有指針,虛擬機內部還是使用了指針,只是外人不得使用而已。這有利於Java程序的安全。
2.多重繼承
c++支持多重繼承,這是c++的一個特徵,它允許多父類派生一個類。盡管多重繼承功能很強,但使用復雜,而且會引起許多麻煩,編譯程序實現它也很不容易。Java不支持多重繼承,但允許一個類繼承多個介面(extends+implement),實現了c++多重繼承的功能,又避免了c++中的多重繼承實現方式帶來的諸多不便。
3.數據類型及類
Java是完全面向對象的語言,所有函數和變數部必須是類的一部分。除了基本數據類型之外,其餘的都作為類對象,包括數組。對象將數據和方法結合起來,把它們封裝在類中,這樣每個對象都可實現自己的特點和行為。而c++允許將函數和變數定義為全局的。此外,Java中取消了c/c++中的結構和聯合,消除了不必要的麻煩。
4.自動內存管理
Java程序中所有的對象都是用new操作符建立在內存堆棧上,這個操作符類似於c++的new操作符。下面的語句由一個建立了一個類Read的對象,然後調用該對象的work方法:
Read r=new Read();
r.work();
語句Read r=new Read();在堆棧結構上建立了一個Read的實例。Java自動進行無用內存回收操作,不需要程序員進行刪除。而c十十中必須由程序貝釋放內存資源,增加了程序設計者的負扔。Java中當一個對象不被再用到時,無用內存回收器將給它加上標簽以示刪除。JAVA里無用內存回收程序是以線程方式在後台運行的,利用空閑時間工作。
5.操作符重載
Java不支持操作符重載。操作符重載被認為是c十十的突出特徵,在Java中雖然類大體上可以實現這樣的功能,但操作符重載的方便性仍然丟失了不少。Java語言不支持操作符重載是為了保持Java語言盡可能簡單。
6.預處理功能
Java不支持預處理功能。c/c十十在編譯過程中都有一個預編澤階段,即眾所周知的預處理器。預處理器為開發人員提供了方便,但增加丁編譯的復雜性。JAVA虛擬機沒有預處理器,但它提供的引入語句(import)與c十十預處理器的功能類似。
7. Java不支持預設函數參數,而c十十支持
在c中,代碼組織在函數中,函數可以訪問程序的全局變數。c十十增加了類,提供了類演算法,該演算法是與類相連的函數,c十十類方法與Java類方法十分相似,然而,由於c十十仍然支持c,所以不能阻止c十十開發人員使用函數,結果函數和方法混合使用使得程序比較混亂。
Java沒有函數,作為一個比c十十更純的面向對象的語言,Java強迫開發人員把所有例行程序包括在類中,事實上,用方法實現例行程序可激勵開發人員更好地組織編碼。
8 字元串
c和c十十不支持字元串變數,在c和c十十程序中使用Null終止符代表字元串的結束,在Java中字元串是用類對象(strinR和stringBuffer)來實現的,這些類對象是Java語言的核心,用類對象實現字元串有以下幾個優點:
(1)在整個系統中建立字元串和訪問字元串元素的方法是一致的;
(2)J3陽字元串類是作為Java語言的一部分定義的,而不是作為外加的延伸部分;
(3)Java字元串執行運行時檢空,可幫助排除一些運行時發生的錯誤;
(4)可對字元串用「十」進行連接操作。
9「goto語句
「可怕」的goto語句是c和c++的「遺物」,它是該語言技術上的合法部分,引用goto語句引起了程序結構的混亂,不易理解,goto語句子要用於無條件轉移子程序和多結構分支技術。鑒於以廣理由,Java不提供goto語句,它雖然指定goto作為關鍵字,但不支持它的使用,使程序簡潔易讀。
l0.類型轉換
在c和c十十中有時出現數據類型的隱含轉換,這就涉及了自動強制類型轉換問題。例如,在c十十中可將一浮點值賦予整型變數,並去掉其尾數。Java不支持c十十中的自動強制類型轉換,如果需要,必須由程序顯式進行強制類型轉換。
11.異常
JAVA中的異常機制用於捕獲例外事件,增強系統容錯能力
try{//可能產生例外的代碼
}catch(exceptionType name){
//處理
}
其中exceptionType表示異常類型。而C++則沒有如此方便的機制。
參考資料:http://www.zs-aptech.com.cn/XUE%20%20XI/06.HTM
返回頂部
--------------------------------------------------------------------------------
• 初學java用那本書好
學習一門新的知識,不可能指望只看一本,或者兩本書就能夠完全掌握。需要有一個循序漸進的閱讀過程。我推薦Oreilly出版的Java系列書籍。
在這里我只想補充一點看法,很多人學習Java是從《Thinking in Java》這本書入手的,但是我認為這本書是不適合初學者的。我認為正確的使用這本書的方法應該是作為輔助的讀物。《Thinking in Java》並不是在完整的介紹Java的整個體系,而是一種跳躍式的寫作方法,是一種類似tips的方法來對Java很多知識點進行了深入的分析和解釋。
對於初學者來說,最好是找一本Java入門的書籍,但是比較完整的循序的介紹Java的語法,面向對象的特性,核心類庫等等,在看這本書的同時,可以同步來看《Thinking in Java》,來加深對Java的理解和原理的運用,同時又可以完整的了解Java的整個體系。
對於Java的入門書籍,蔡學鏞推薦的是Oreilly的《Exploring Java, 2nd Edition》 或者《Java in a Nutshell,2nd Edition(針對C++背景)》,我並沒有看過這兩本書。其實我覺得電子工業出版社的《Java 2編程詳解》或者《Java 2從入門到精通》就很不錯。
在所有的Java書籍當中,其實最最有用的,並不是O'reilly的 Java Serials,真正最最有用處是JDK的Documentation!幾乎你想獲得的所有的知識在Documentation裡面全部都有,其中最主要的部分當然是Java基礎類庫的API文檔,是按照package來組織的,對於每一個class都有詳細的解釋,它的繼承關系,是否實現了某個介面,通常用在哪些場合,還可以查到它所有的public的屬性和方法,每個屬性的解釋,意義,每個方法的用途,調用的參數,參數的意義,返回值的類型,以及方法可能拋出的異常等等。可以這樣來說,所有關於Java編程方面的書籍其實都不過是在用比較通俗易懂的語言,和良好的組織方式來介紹Documentation裡面的某個package裡麵包含的一些類的用法而已。所以萬變不離其宗,如果你有足夠的能力來直接通過Documentation來學習Java的類庫,那麼基本上就不需要看其他的書籍了。除此之外,Documentation也是編程必備的手冊,我的桌面上有三個Documentation的快捷方式,分別是J2SDK1.4.1的Documentation,Servlet2.3的Documentation和J2SDKEE1.3.1的Documentation。有了這個三個Documentation,什麼其他的書籍都不需要了。
對於Java Web 編程來說,最核心的是要熟悉和掌握HTTP協議,這個就和Java無關了,在熟悉HTTP協議之後,就需要熟悉Java的實現HTTP協議的類庫,也就是Servlet API,所以最重要的東西就是Servlet API。當然對於初學者而言,直接通過Servlet API來學習Web編程有很大的難度,我推薦O'reilly的《Java Server Pages 》這本書來學習Web 編程。
EJB的書籍當中,《Enterprise JavaBeans, 2nd Edition》是一本很不錯的書, EJB的學習門檻是比較高,入門很難,但是這本書完全降低了學習的難度,特別重要的一點是,EJB的學習需要結合一種App Server的具體實現,所以在學習EJB的同時,必須同步的學習某種App Server,而這本書相關的出了三本書,分別是Weblogic6.1,Websphere4.0和JBoss3.0上面部署書中例子的實做。真是既有理論,又有實踐。在學習EJB的同時,可以邊看邊做,EJB的學習會變得很輕松。
但是這本書也有一個問題,就是版本比較舊,主要講EJB1.1規范和部分EJB2.0的規范。而Ed Roman寫的《Mastering EJB 2.0》這本書完全是根據EJB2.0規范寫的,深入淺出,覆蓋了EJB編程的各個方面,並且還有很多編程經驗tips,也是學習EJB非常推薦的書籍之一。
如果是結合Weblogic來學習J2EE的話,《J2EE應用與BEA Weblogic Server》絕對是首選讀物,雖然是講述的Weblogic6.0,仍然值得購買,這本書是BEA官方推薦的教材,作者也是BEA公司的工程師。現在中文版已經隨處可見了。這本書結合Weblogic介紹了J2EE各個方面的技術在Weblogic平台上的開發和部署,實踐指導意義非常強。
在掌握了Java平台基礎知識和J2EE方面的知識以後,更進一步的是學習如何運用OO的方法進行軟體的設計,那麼就一定要學習「設計模式」。Sun公司出版了一本《J2EE核心模式》,是每個開發Java企業平台軟體的架構師必備的書籍。這本書全面的介紹了J2EE體系架構的各種設計模式,是設計師的必讀書籍。
Java Learning Path(三)過程篇
每個人的學習方法是不同的,一個人的方法不見得適合另一個人,我只能是談自己的學習方法。因為我學習Java是完全自學的,從來沒有問過別人,所以學習的過程基本上完全是自己摸索出來的。我也不知道這種方法是否是比較好的方法,只能給大家提供一點參考了。
學習Java的第一步是安裝好JDK,寫一個Hello World,? 其實JDK的學習沒有那麼簡單,關於JDK有兩個問題是很容易一直困擾Java程序員的地方:一個是CLASSPATH的問題,其實從原理上來說,是要搞清楚JRE的ClassLoader是如何載入Class的;另一個問題是package和import問題,如何來尋找類的路徑問題。把這兩個問題摸索清楚了,就掃除了學習Java和使用JDK的最大障礙。推薦看一下王森的《Java深度歷險》,對這兩個問題進行了深入的探討。
第二步是學習Java的語法。Java的語法是類C++的,基本上主流的編程語言不是類C,就是類C++的,沒有什麼新東西,所以語法的學習,大概就是半天的時間足夠了。唯一需要注意的是有幾個不容易搞清楚的關鍵字的用法,public,protected,private,static,什麼時候用,為什麼要用,怎麼用,這可能需要有人來指點一下,我當初是完全自己琢磨出來的,花了很久的時間。不過後來我看到《Thinking in Java》這本書上面是講了這些概念的。
第三步是學習Java的面向對象的編程語言的特性的地方。比如繼承,構造器,抽象類,介面,方法的多態,重載,覆蓋,Java的異常處理機制。對於一個沒有面向對象語言背景的人來說,我覺得這個過程需要花很長很長時間,因為學習Java之前沒有C++的經驗,只有C的經驗,我是大概花了一個月左右吧,才徹底把這些概念都搞清楚,把書上面的例子反復的揣摩,修改,嘗試,把那幾章內容反復的看過來,看過去,看了不下5遍,才徹底領悟了。不過我想如果有C++經驗的話,應該一兩天時間足夠了。那麼在這個過程中,可以多看看《Thinking in Java》這本書,對面向對象的講解非常透徹。可惜的是我學習的時候,並沒有看到這本書,所以自己花了大量的時間,通過自己的嘗試和揣摩來學會的。
第四步就是開始熟悉Java的類庫。Java的基礎類庫其實就是JDK安裝目錄下面jre\lib\rt.jar這個包。學習基礎類庫就是學習rt.jar。基礎類庫裡面的類非常非常多。據說有3000多個,我沒有統計過。但是真正對於我們來說最核心的只有4個,分別是
java.lang.*;
java.io.*;
java.util.*;
java.sql.*;
這四個包的學習,每個包的學習都可以寫成一本厚厚的教材,而O'reilly也確實是這樣做的。我覺得如果時間比較緊,是不可能通過讀四本書來學習。我覺得比較好的學習方法是這樣的:
首先要通讀整個package的框架,了解整個package的class,interface,exception的構成,最好是能夠找到介紹整個包框架的文章。這些專門介紹包的書籍的前幾章應該就是這些總體的框架內容介紹。
對包整體框架的把握並不是要熟悉每個類的用法,記住它有哪些屬性,方法。想記也記不住的。而是要知道包有哪些方面的類構成的,這些類的用途是什麼,最核心的幾個類分別是完成什麼功能的。我在給人培訓的時候一般是一次課講一個包,所以不可能詳細的介紹每個類的用法,但是我反復強調,我給你們講這些包的不是要告訴你們類的方法是怎麼調用的,也不要求你們記住類的方法調用,而是要你們了解,Java給我們提供了哪些類,每個類是用在什麼場合,當我遇到問題的時候,我知道哪個類,或者哪幾個類的組合可以解決我的問題,That'all!,當我們具體寫程序的時候,只要你知道該用哪個類來完成你的工作就足夠了。編碼的時候,具體的方法調用,是邊寫代碼,邊查Documentation,所有的東西都在Documentation裡面,不要求你一定記住,實際你也記不住3000多個類的總共將近10萬個方法調用。所以對每個包的總體框架的把握就變得極為重要。
第五步,通過上面的學習,如果學的比較扎實的話,就打好了Java的基礎了,剩下要做的工作是掃清Documentation裡面除了上面4個包之外的其他一些比較有用處的類。相信進展到這一步,Java的自學能力已經被培養出來了,可以到了直接學習Documentation的水平了。除了要做GUI編程之外,JDK裡面其他會有用處的包是這些:
java.text.
『貳』 全國計算機二級等級考試java是有題庫嗎
有題庫的。根據《全國計算機等級考試二級Java語言程序設計考試大綱(2018年版回) 》,計算機答二級ava考試主要考Java 語言的特點和實現機制、Java 體系結構、Java 語言中面向對象的特性、Java 語言的基本數據類型和運算、Java 語言的基本語句。
Java 編程基本技術、編寫用戶界面程序基礎、編寫小應用程序(Applet)基礎、JavaSDK6.0 的下載和安裝等內容。採用上機考試形式,考試時長共120分鍾,滿分100分。
1、題型及分值:單項選擇題 40 分(含公共基礎知識部分 10 分)。 操作題 60 分(包括基本操作題、簡單應用題及綜合應用題)。
2、考試環境:操作系統:中文版 Windows 7。 開發環境:jdk1.6.0 或 NetBeans 中國教育考試版(2007)。
『叄』 求java語言程序設計基礎篇第八版 復習題和編程練習題答案
Java語言程序設計第8版 習題解答+例題程序.rar
http://download.csdn.net/download/hxjwan/4693719
Java語言程序設計基礎篇全習題答案
http://wenku..com/view/a8da240b76c66137ee061928.html
去網路文庫搜一下,有各章節的詳細習題和答案。
『肆』 (特急)《Java程序設計》理論題庫—判斷題(要准確答案)
異常的拋出,就是將異常拋給異常處理器,暫時不去處理它。
摘要:《Java程序員面試指南》第7章異常處理及內存管理,本章講述的是要想成功地成為一名合格的Java程序員,掌握好異常處理機制是編寫大型程序必不可少的基本功。本節為大家介紹異常的處理方式之三:throw。
標簽:throw Java 程序員 Java程序員面試指南
Oracle幫您准確洞察各個物流環節
7.4 異常的處理方式之三:throw(1)
異常的拋出,就是將異常拋給異常處理器,暫時不去處理它。本節主要講解用throw拋出異常的方式,以及如何由try-catch來接收所拋出的異常。
當一個方法發生異常時可以通過throw關鍵字來拋出異常,把異常拋給它上一級的調用者,拋出的可以是異常引用,也可以是異常對象,它的語法格式如下:
throw 異常對象名; 或者
throw new 異常類名(); 一條throw語句一旦被執行,程序立即轉入相應的異常處理程序段,它後面的語句就不再執行了(這一點類似於return語句),而且它所在的方法也不再返回有意義的值。在一個方法中,throw語句可以有多條,但每一次最多隻能執行其中的一條。在一般情況下,throw語句都會寫在判斷語句塊中,以避免每次都執行該語句。
【代碼剖析】下面來看一個例子,也許從中你會明白點什麼。具體代碼如下:
public class catchThows { static int x; public static void main(String argv[]) { double a = Math.random() * 10; if (x > 0) System.out.println(a / x); else throw new Exception(); // 拋出異常 } public void setX(int x) { this.x = x; } } 運行結果如圖7.1所示。
(點擊查看大圖)圖7.1 運行結果
從上面的運行結果中可以看出,一個方法中如果使用throw來拋出異常,要麼自己捕獲它,要麼聲明拋出了一個異常。要聲明拋出了異常,需要用throws關鍵字在方法的頭部聲明。如果我們將上面的代碼修改成下面的代碼,那麼結果又會怎樣呢?
public class catchThows_1 { static int x; public static void main(String argv[]) { new catchThows().setX(0); double a = Math.random() * 10; if (x > 0) System.out.println(a / x); else try { throw new Exception();// 拋出異常 } catch (Exception e) { System.out.println("出現異常的原因是:"+e.getMessage()); } } public void setX(int x) { this.x = x; } } 運行結果如下:
出現異常的原因是:null 還有一種拋出異常的方法是讓被調用的方法表示它將不處理異常,該異常將被拋出到它的調用方法中。這點是和throws聲明異常很相似的,但它們的位置是完全不同的。具體代碼如下:
public class catchThows_2 { void findThows() { try { //拋出方法 throw new ArithmeticException(); } catch(ArithmeticException ae) { throw ae; } } public static void main(String args[]) { catchThows ct=new catchThows(); //對方法進行異常處理 try { ct.findThows(); } catch(ArithmeticException ae) { System.out.println("出現異常的原因是:"+ae); } } } 運行結果如下:
出現異常的原因是:java.lang.ArithmeticException
【責任編輯:雲霞 TEL:(010)68476606】
回書目 上一節 下一節
上一篇: 7.3 異常的處理方式之二:throws(2) 下一篇: 7.4 異常的處理方式之三:throw(2)
相關文章
·7.5 內存的管理(2)
·7.4 異常的處理方式之三:throw(2)
·17.3 Java高級編程試題(1)
·17.1 Java基礎編程試題(6)
·17.1 Java基礎編程試題(5)
頻道熱門
·自己動手寫搜索引擎
·1.1.2 編寫代碼(15分鍾)
·1.1.1 准備工作環境(10分鍾)
·軟體調試的藝術
·WCF編程(第2版)
『伍』 大家進來幫我做幾道JAVA試題——《Java程序設計》理論題庫—判斷題
vive15 回答的有的題明顯的錯的
1錯。2對。3對。4對。5對。
2對。3錯。4對。5對。
1對。2錯。3對。4對。5對。6對。7錯。8錯。9對。10對。11錯。12對。13錯。14錯。15對。16對。17錯。18對。19錯。20錯。21錯。22對。23錯。24對。
我改了一下,要是有錯請通知我啊
『陸』 誰有JAVA語言的程序題庫啊,就是給出一個題目,然後讓我寫程序的,多多益善啊,呵呵,書也可以的
如果你是練習對java的熟悉程度,那麼你可以把任何語言的題庫都用java來實現一遍,一般你用C語言程序設計的課後習題用java做一遍基本就可以了。但是我建議你不要一直做程序題庫,java是用來在實際工作中應用的,是用來解決實際問題的,真正想要再提高,你需要去做一些項目練習,這些練習是能夠真正解決一些生活和工作中的問題的,這樣你才能進步的更快。