九九热最新网址,777奇米四色米奇影院在线播放,国产精品18久久久久久久久久,中文有码视频,亚洲一区在线免费观看,国产91精品在线,婷婷丁香六月天

歡迎來到裝配圖網(wǎng)! | 幫助中心 裝配圖網(wǎng)zhuangpeitu.com!
裝配圖網(wǎng)
ImageVerifierCode 換一換
首頁 裝配圖網(wǎng) > 資源分類 > DOC文檔下載  

《Java基礎(chǔ)入門》-課后習(xí)題答案

  • 資源ID:61346906       資源大?。?span id="24d9guoke414" class="font-tahoma">97KB        全文頁數(shù):15頁
  • 資源格式: DOC        下載積分:20積分
快捷下載 游客一鍵下載
會員登錄下載
微信登錄下載
三方登錄下載: 微信開放平臺登錄 支付寶登錄   QQ登錄   微博登錄  
二維碼
微信掃一掃登錄
下載資源需要20積分
郵箱/手機(jī):
溫馨提示:
用戶名和密碼都是您填寫的郵箱或者手機(jī)號,方便查詢和重復(fù)下載(系統(tǒng)自動生成)
支付方式: 支付寶    微信支付   
驗證碼:   換一換

 
賬號:
密碼:
驗證碼:   換一換
  忘記密碼?
    
友情提示
2、PDF文件下載后,可能會被瀏覽器默認(rèn)打開,此種情況可以點(diǎn)擊瀏覽器菜單,保存網(wǎng)頁到桌面,就可以正常下載了。
3、本站不支持迅雷下載,請使用電腦自帶的IE瀏覽器,或者360瀏覽器、谷歌瀏覽器下載即可。
4、本站資源下載后的文檔和圖紙-無水印,預(yù)覽文檔經(jīng)過壓縮,下載后原文更清晰。
5、試題試卷類文檔,如果標(biāo)題沒有明確說明有答案則都視為沒有答案,請知曉。

《Java基礎(chǔ)入門》-課后習(xí)題答案

精選優(yōu)質(zhì)文檔-傾情為你奉上Java基礎(chǔ)入門課后習(xí)題答案第1章 Java開發(fā)入門一、填空題1、 Java EE、Java SE、Java ME2、 JRE3、 javac4、 bin5、 path、classpath二、選擇題1、ABCD2、C3、D4、B5、B三、簡答題1、 面向?qū)ο?、跨平臺性、健壯性、安全性、可移植性、多線程性、動態(tài)性等。2、 JRE(Java Runtime Environment,Java運(yùn)行時環(huán)境),它相當(dāng)于操作系統(tǒng)部分,提供了Java程序運(yùn)行時所需要的基本條件和許多Java基礎(chǔ)類,例如,IO類、GUI控件類、網(wǎng)絡(luò)類等。JRE是提供給普通用戶使用的,如果你只想運(yùn)行別人開發(fā)好的Java程序,那么,你的計算機(jī)上必須且只需安裝JRE。JDK(Java Development Kit,Java開發(fā)工具包),它包含編譯工具、解釋工具、文檔制作工具、打包工具多種與開發(fā)相關(guān)的工具,是提供給Java開發(fā)人員使用的。初學(xué)者學(xué)習(xí)和使用Java語言時,首先必須下載和安裝JDK。JDK中已經(jīng)包含了JRE部分,初學(xué)者安裝JDK后不必再去下載和安裝JRE了。 四、編程題public class HelloWorld public static void main(String args) System.out.println("這是第一個Java程序!");第2章 Java編程基礎(chǔ)一、填空題1、 class2、 true和false3、 單行注釋、多行注釋、文檔注釋4、 基本數(shù)據(jù)類型、引用數(shù)據(jù)類型5、 1、2、4、86、 & && | | 7、 08、 59、 3410、 56 二、判斷題1、 錯2、對3、錯4、對5、錯三、選擇題1、 AD2、AD3、C4、ABCD5、C6 、A7、AC8、A9、B10、A 四、程序分析題1、 編譯不通過。int值4和b相加時,由于變量b的類型為byte,取值范圍沒有int類型大,存不下int類型的值,因此編譯不通過。2、 編譯不通過。這是因為y是在最里層的代碼塊中定義的一個變量,只有在那個代碼塊中才可使用,在使用y = x;語句時已經(jīng)超過了y變量的作用域,所以編譯無法通過。3、 打印結(jié)果為:3。4、 打印結(jié)果為: 9 8 7五、簡答題1、Java語言的八種基本數(shù)據(jù)類型有:byte字節(jié)型,占一個字節(jié)。short短整型,占兩個字節(jié)。int整型,占4個字節(jié)。long長整型,占8個字節(jié)。float單精度浮點(diǎn)型,占4個字節(jié)。double雙精度浮點(diǎn)型,占8個字節(jié)。char字符型,占兩個字節(jié)。boolean型,表示邏輯值,有true和false兩個值,分別占一個字節(jié)。2、如果使用“&”在表達(dá)式之間進(jìn)行連接,那么無論任何情況,“&”兩邊的表達(dá)式都會參與計算。如果使用“&&”進(jìn)行連接,當(dāng)“&&”左邊的表達(dá)式為false,則不會執(zhí)行其右邊的表達(dá)式。例如定義int x = 2,y = 0; boolean b = x < y & x / 2 > 0表達(dá)是會發(fā)生被0除異常,因為x / y的表達(dá)式執(zhí)行了。而boolean b = x < y & x / 2 > 0是不會出現(xiàn)這種異常的,因為x < y為false,表達(dá)式x / y不會執(zhí)行。3、方法重載指的是在一個類中可以聲明多個同名的方法,而方法中參數(shù)的個數(shù)或者數(shù)據(jù)類型不一致。調(diào)用這些同名的方法時,JVM會根據(jù)實際參數(shù)的不同綁定到不同的方法。六、編程題1、參考答案public class Test01 public static void main(String args) int sum = 0;for (int i = 1; i < 100; i+) if (i % 2 != 0)sum += i;System.out.println(sum);2、參考答案public class Test02 public static void main(String args) int y = function(0);System.out.println(y);public static int function(int x) int y;if (x > 0) y = x + 3; else if (x = 0) y = 0; else y = x * x - 1;return y;3、參考答案public class Test03 public static void main(String args) int arr = 25, 24, 12, 76, 101, 96, 28 ;for (int i = 0; i < arr.length - 1; i+) / 定義內(nèi)層循環(huán)for (int j = 0; j < arr.length - i - 1; j+) if (arrj > arrj + 1) / 比較相鄰元素/ 下面的三行代碼用于交換兩個元素int temp = arrj;arrj = arrj + 1;arrj + 1 = temp;for (int i = 0; i < arr.length; i+) System.out.print(arri + " "); / 打印元素和空格第3章 面向?qū)ο螅ㄉ希┮?、填空題1、封裝、繼承、多態(tài) 2、new 3、成員變量、局部變量4、類、類5、this6、finalize()7、靜態(tài)變量8、內(nèi)部類9、javadoc10、private二、判斷題1、對 2、對 3、錯 4、對 5、錯三、選擇題1、B 2、D 3、B 4、ABC 5、ABCD 6、ACD 7、ABCD 8、ABCD 9、D 10、D 四、程序分析題1、程序不能編譯通過,因為在類A中的成員變量secret用private修飾,所以在類Test1中無法訪問。2、程序不能編譯通過,因為在靜態(tài)方法method()中不能訪問非靜態(tài)成員變量x。3、程序能夠編譯通過,運(yùn)行的結(jié)果為“inner”。五、簡答題1、構(gòu)造方法是類的一個特殊成員,它會在類實例化對象時被自動調(diào)用。而普通方法只有在使用的時 候才會被調(diào)用。在定義構(gòu)造方法時要求方法名與類名相同、在方法名的前面沒有返回值類型的聲 明、在方法中不能使用return語句返回一個值2、單例模式可以保證在整個程序運(yùn)行期間針對該類只存在一個實例對象。六、編程題1、參考答案class Student private String name;private double grade;public Student() public Student(String name, double grade) this.name = name;this.grade = grade;public String getName() return name;public void setName(String name) this.name = name;public double getGrade() return grade;public void setGrade(double grade) this.grade = grade;public class Test01 public static void main(String args) Student stu1 = new Student();stu1.setName("zhangsan");stu1.setGrade(99);Student stu2 = new Student("lisi", 100);2、參考答案class Father private String name = "zhangjun"class Child public void introFather() System.out.println("My Father's name is " + name);public class Test02 public static void main(String args) Father.Child child = new Father().new Child();child.introFather();第4章 面向?qū)ο螅ㄏ拢┮?、填空題1、繼承2、方法,抽象類3、import4、子類、父類、基類5、Exception6、final7、super8、Object9、try、catch10、jar cvf,java jar 二、判斷題1、錯 2、對 3、錯 4、對 5、對三、選擇題1、B 2、C 3、ABC 4、 ABCD 5、C 6、AC 7、C 8、D 9、A 10、B四、程序分析題1、程序編譯能通過,這是因為int x = 2 / 0; System.out.println(x);這兩條語句使用了try塊,捕獲了程序因為除以0而產(chǎn)生的異常情況,之后程序會繼續(xù)向下執(zhí)行,輸出“進(jìn)入catch代碼塊”,“進(jìn)入finally代碼塊”。2、程序編譯不通過,這是因為在程序中使用了final關(guān)鍵字修飾Animal類,使得Animal類不能被繼承。shout()方法中同樣使用了final關(guān)鍵字,使得該方法不能被重寫。3、程序編譯能通過,輸出結(jié)果為“動物叫!”和“汪汪”,因為在程序中調(diào)用shout()方法時,首先會通過super.shout()調(diào)用父類的方法說出“動物叫!”之后再輸出“汪汪”4、程序編譯不通過,因為接口中定義的方法不能有方法體,所以定義的eat()方法是錯誤的。接口中的方法必須在子類中全部實現(xiàn),由于run()方法在子類中并沒有重新實現(xiàn),所以這也是錯誤的。五、簡答題1、在繼承關(guān)系中,子類的方法與父類的某一方法具有相同的方法名、返回類型和參數(shù)列表,則稱子類的該方法重寫(覆蓋)父類的方法。2、多態(tài)意味著一個對象有著多種形態(tài),可以在特定的情況下,表現(xiàn)不同的狀態(tài),從而對應(yīng)著不同的屬性和方法。簡單的說,多態(tài)就是使用父類類型的變量引用子類對象,根據(jù)被引用子類對象的特性,程序會得到不同的運(yùn)行效果。3、在Java中,使用abstract關(guān)鍵字修飾的類稱之為抽象類。抽象類是不能被實例化的,通常需要寫一個子類來繼承抽象類,同時實例化子類來獲得該類的對象。抽象類通常用于表示一種抽象的概念。接口可以說是一種特殊的抽象類,接口中只能定義常量和抽象方法。由于接口的特殊性,在定義時需要使用interface關(guān)鍵字。六、編程題1、參考答案class Student public String name;public int age;public Student(String name,int age)this.name=name;this.age=age;public void show()System.out.println("name: "+name+" age: "+age);class UnderGraduate extends Studentpublic String degree;public UnderGraduate(String name,int age,String degree)super(name, age);this.degree=degree;public void show()System.out.println("name: "+name+" age: "+age+" degree: "+degree);public class Test01public static void main(String args) Student student = new Student("zhangsan", 16);student.show();UnderGraduate underGraduate = new UnderGraduate("lisi", 20, "bechalor");underGraduate.show();2、參考答案interface Shape double area(double givenValue);class Square implements Shapepublic double area(double sideLength) return sideLength*sideLength; class Circle implements Shapepublic double area(double r) return Math.PI*r*r;public class Test02 public static void main(String args) Shape square = new Square();Shape circle = new Circle();System.out.println(square.area(2);System.out.println(circle.area(3);3、參考答案class NoThisSongException extends Exceptionpublic NoThisSongException()super();public NoThisSongException(String message)super(message);class Playerpublic void play(int index)throws NoThisSongExceptionif(index>10)throw new NoThisSongException("您播放的歌曲不存在");System.out.println("正在播放歌曲");public class Test03 public static void main(String args) Player player = new Player();try player.play(13); catch (NoThisSongException e) System.out.println("異常信息為: "+e.getMessage();第5章 多線程一、填空題1、 線程、通信2、 Thread、Runnable3、 就緒4、 synchronized、對象、this5、 進(jìn)程6、 新建狀態(tài)(New)、就緒狀態(tài)(Runnable)、運(yùn)行狀態(tài)(Running)、阻塞狀態(tài)(Blocked)、死亡狀態(tài)(Terminated)7、 10、18、 開啟一個新線程、run()方法9、 wait()、notify()、notifyAll()10、setDaemon(true)、start()二、判斷題1、錯 2、對 3、對 4、錯 5、錯三、選擇題1、B 2、AC 3、ABC 4、BC 5、ABD 6、ABC 7、C 8、D 9、AB 10、ABCD四、程序分析題1、程序不能編譯通過,因為RunHandler類沒有實現(xiàn)Runnable接口,因此RunHandler的實例對象不能作為參數(shù)傳遞給Thread的構(gòu)造方法。2、程序不能編譯通過,因為Thread的子類A重寫的run()方法的訪問級別不能低于父類run()方法的。訪問級別3、程序不能編譯通過,因為同步方法中調(diào)用wait()方法的對象必須為同步鎖對象。4、t.start();五、簡答題1、一種是繼承java.lang包下的Thread類,覆寫Thread類的run()方法,在run()方法中實現(xiàn)運(yùn)行在線程上的代碼。new Thread() public void run().start();另一種就是實現(xiàn)java.lang.Runnable接口,同樣是在run()方法中實現(xiàn)運(yùn)行在線程上的代碼。new Thread(new Runnable() public void run().start() 2、調(diào)用sleep()方法,正在執(zhí)行的線程主動讓出CPU去執(zhí)行其他線程,在sleep()方法指定的時間過后,CPU才會回到這個線程上繼續(xù)往下執(zhí)行,如果當(dāng)前線程進(jìn)入了同步鎖,sleep()方法并不會釋放鎖,即使當(dāng)前線程使用sleep()方法讓出了CPU,但其它被同步鎖擋住了的線程也無法得到執(zhí)行。wait()在一個已經(jīng)進(jìn)入了同步鎖的線程內(nèi)進(jìn)行調(diào)用,讓當(dāng)前線程暫時讓出同步鎖,以便其它正在等待此鎖的線程可以得到同步鎖并運(yùn)行。當(dāng)其它線程調(diào)用了notify()方法后,調(diào)用wait()方法的線程就會解除wait狀態(tài),當(dāng)再次獲得同步鎖后,程序可以繼續(xù)向下執(zhí)行。六、編程題1、參考答案public class MyThread extends Threadpublic MyThread(String name) super(name); public void run() System.out.println(this.getName();public static void main(String args) new MyThread("Thread1").start();new MyThread("Thread2").start(); 2、參考答案public class MyRunnable implements Runnable public void run() for (int i = 0; i < 50; i+) System.out.println("new");public static void main(String args) new Thread(new MyRunnable().start();for (int i = 0; i < 100; i+) System.out.println("main");3、參考答案public class Test01 public static void main(String args) Teacher t = new Teacher();new Thread(t, "陳老師").start();new Thread(t, "高老師").start();new Thread(t, "李老師").start();class Teacher implements Runnable private int notes = 80;public void run() while (true) dispatchNotes(); / 調(diào)用售票方法if (notes <= 0) break;private synchronized void dispatchNotes() if (notes > 0) try Thread.sleep(10); / 經(jīng)過的線程休眠10毫秒 catch (InterruptedException e) e.printStackTrace();System.out.println(Thread.currentThread().getName() + "-發(fā)出的筆記"+ notes-);4、參考答案public class Accumulator extends Thread private int stratNum;public static int sum;public Accumulator(int startNum) this.stratNum = startNum;public static synchronized void add(int num) sum += num;public void run() int sum = 0;for (int i = 0; i < 10; i+) sum += stratNum + i;add(sum);public static void main(String args) throws Exception Thread threadList = new Thread10;for (int i = 0; i < 10; i+) threadListi = new Accumulator(10 * i + 1);threadListi.start();for (int i = 0; i < 10; i+) threadListi.join();System.out.println("Sum is : " + sum);第6章 JavaAPI一、填空題1、 String、StringBuffer2、 Date、Calendar、DateFormat3、 getRuntime()4、 ()5、 DateFormat6、 、e7、 Random、java.util8、 length()9、 靜態(tài)10、edcba二、判斷題1、錯 2、錯 3、對 4、錯 5、對三、選擇題1、C 2、C 3、D 4、C 5、C 6、B 7、C 8、A 9、A 10、B四、程序分析題1、程序編譯能通過,輸出結(jié)果如下57.0-8.0-58.1-6.12、程序編譯能通過,輸出結(jié)果如下str.length():15str.charAt(0):dlastIndexOf(m):10substring(2,4):feindexOf(g):5五、簡答題 1、String類是不可變類,即字符串值一旦初始化后就不可能改變。StringBuffer是可變字符串類,類似String的緩沖區(qū),可以修改字符串的值。2、Date類用來表示某個特定的瞬間,能夠精確到毫秒。而在實際應(yīng)用中,往往需要把一個日期中的年、月、日等信息單獨(dú)返回進(jìn)行顯示或處理,這個類中的大部分方法都已被標(biāo)記過時。Calender類基本取代了Date類,該類中定義了一系列用于完成日期和時間字段操作的方法。 Calendar的getTime()方法,getTime()返回一個表示Calendar時間值的Date對象,同時Calendar有一個setTime(Date date)方法,setTime()方法接收一個Date對象,將Date對象表示的時間值設(shè)置給Calendar對象,通過這兩個方法就可以完成Date和Calendar對象之間的轉(zhuǎn)換。六、編程題1、 參考答案public class Test01 public static void main(String args) String str = "HelloWorld"/ 字符串轉(zhuǎn)成char數(shù)組char ch = str.toCharArray();StringBuffer buffer = new StringBuffer();for (int i = str.length() - 1; i >= 0; i-) if (chi >= 'A' && chi <= 'Z') buffer.append(String.valueOf(chi).toLowerCase(); else if (chi >= 'a' && chi <= 'z') buffer.append(String.valueOf(chi).toUpperCase();System.out.println(buffer.toString();2、 參考答案import java.text.DateFormat;import java.util.Calendar;import java.util.Date;public class Test02 public static void main(String args) Calendar calendar = Calendar.getInstance();calendar.add(Calendar.DATE, 100);Date date = calendar.getTime();DateFormat format = DateFormat.getDateInstance(DateFormat.FULL);String string = format.format(date);System.out.println(string);3、 參考答案import java.util.Random;public class Test03 public static void main(String args) Random rand = new Random(); int num = new int5; for (int i = 0; i < num.length; i+) numi = 20 + rand.nextInt(31); System.out.println(numi); 第7章 集合類一、填空題1、集合2、Comparator3、有序、可重復(fù),無序、不可重復(fù)4、hashNext()、next()5、Collection、Map6、鍵、值7、ListIterator8、ArrayList、LinkedList,HashSet、TreeSet,HashMap、TreeMap9、put()、get()10、Collections、Arrays二、判斷題1、錯 2、對 3、對 4、錯 5、對三、選擇題1、BC 2、A 3、D 4、ABD 5、C 6、AB 7、D 8、AB 9、ABC 10、B四、程序分析題1、程序可以編譯通過,輸出結(jié)果是“a、b、c”,因為TreeSet集合不允許存放重復(fù)元素,第2次增加的元素c會覆蓋之前存入的元素c,所以輸出結(jié)果是“a、b、c”,而不是“a、b、c、c”。2、程序不可以編譯通過,這是由于向ArrayList集合中存入元素時,集合并不能記住元素的類型,因此在取出元素時,只能使用Object類型,而不能使用String類型。3、程序可以編譯通過,但是什么也沒有打印。使用ListIterator進(jìn)行從后向前的遍歷集合,可以使用以下兩種方法,一是使用listIterator(int index)方法將索引index的值設(shè)置為集合元素的數(shù)目,也就是ListIterator it = list.listIterator(3);,二是將程序先從前向后遍歷,然后再從后向前遍歷。4、程序編譯不通過,由于Map集合在遍歷的過程中不能使用集合對象本身刪除元素,這會導(dǎo)致并發(fā)修改異常,若想刪除集合中的元素,可以使用Iterator的remove()方法。五、簡答題1、為了使程序能方便的存儲和操作數(shù)目不固定的一組數(shù)據(jù),JDK提供了一套類庫,這些類都位于java.util包中,統(tǒng)稱為集合。集合框架中包含3個接口,分別是List、Set、Map。2、List的特點(diǎn)是元素有序、元素可重復(fù)。List接口的主要實現(xiàn)類有ArrayList和LinkedList。Set的特點(diǎn)是元素?zé)o序、元素不可重復(fù)。Set接口的主要實現(xiàn)類有HashSet和TreeSet。Map的特點(diǎn)是存儲的元素是鍵(Key)、值(Value)映射關(guān)系,元素都是成對出現(xiàn)的。Map接口的主要實現(xiàn)類有HashMap和TreeMap。3、Collection是一個單例集合接口。它提供了對集合對象進(jìn)行基本操作的通用方法。Collections是一個工具類。它包含各種有關(guān)集合操作的方法。六、編程題1、參考答案import java.util.*;public class Test01 public static void main(String args) ArrayList list = new ArrayList(); for(int i = 0; i < 10; i+) list.add("A"+i);Iterator it = list.iterator(); while(it.hasNext() Object obj = it.next(); System.out.println(obj);2、參考答案import java.util.*;public class Test02 public static void main(String args) HashSet hashSet = new HashSet();Person p1 = new Person("Jack",25);Person p2 = new Person("Rose",23);Person p3 = new Person("Jack",27);hashSet.add(p1);hashSet.add(p2);hashSet.add(p3);for(Object obj:hashSet)Person p=(Person)obj;System.out.println(p.name+":"+p.age);class PersonString name;int age;public Person(String name, int age) super();this.name = name;this.age = age;public int hashCode() return name.hashCode();public boolean equals(Object obj) if (this = obj)return true;if (obj = null)return false;Person other = (Person) obj;return other.name.equals(this.name);3、參考答案import java.util.*;public class Test03 public static void main(String args) TreeMap map = new TreeMap(new MyComparator();map.put("1", "Lucy");map.put("2", "Lucy");map.put("3", "John");map.put("4", "Smith");map.put("5", "Amanda");for (Object key : map.keySet() System.out.println(key + ":" + map.get(key);class MyComparator implements Comparator public int compare(Object obj1, Object obj2) String ele1 = (String) obj1;String ele2 = (String) obj2;return pareTo(ele1);專心-專注-專業(yè)

注意事項

本文(《Java基礎(chǔ)入門》-課后習(xí)題答案)為本站會員(風(fēng)***)主動上傳,裝配圖網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對上載內(nèi)容本身不做任何修改或編輯。 若此文所含內(nèi)容侵犯了您的版權(quán)或隱私,請立即通知裝配圖網(wǎng)(點(diǎn)擊聯(lián)系客服),我們立即給予刪除!

溫馨提示:如果因為網(wǎng)速或其他原因下載失敗請重新下載,重復(fù)下載不扣分。




關(guān)于我們 - 網(wǎng)站聲明 - 網(wǎng)站地圖 - 資源地圖 - 友情鏈接 - 網(wǎng)站客服 - 聯(lián)系我們

copyright@ 2023-2025  zhuangpeitu.com 裝配圖網(wǎng)版權(quán)所有   聯(lián)系電話:18123376007

備案號:ICP2024067431-1 川公網(wǎng)安備51140202000466號


本站為文檔C2C交易模式,即用戶上傳的文檔直接被用戶下載,本站只是中間服務(wù)平臺,本站所有文檔下載所得的收益歸上傳人(含作者)所有。裝配圖網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對上載內(nèi)容本身不做任何修改或編輯。若文檔所含內(nèi)容侵犯了您的版權(quán)或隱私,請立即通知裝配圖網(wǎng),我們立即給予刪除!