java實(shí)用教程第版習(xí)題解答_第1頁(yè)
java實(shí)用教程第版習(xí)題解答_第2頁(yè)
java實(shí)用教程第版習(xí)題解答_第3頁(yè)
java實(shí)用教程第版習(xí)題解答_第4頁(yè)
java實(shí)用教程第版習(xí)題解答_第5頁(yè)
已閱讀5頁(yè),還剩52頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、習(xí)題解答習(xí)題 1(第 1 章)一、問(wèn)答題 James Gosling需 3 個(gè)步驟:用文本編輯器編寫(xiě)源文件。使用 javac 編譯源文件 , 得到字節(jié)碼文件。使用解釋器運(yùn)行程序。 源文件由若干個(gè)類(lèi)所構(gòu)成。 對(duì)于應(yīng)用程序, 必須有一個(gè)類(lèi)含有 publicstatic void main(String args) 的方法,含有該方法的類(lèi)稱(chēng)為應(yīng)用程序的主類(lèi)。不一定,但至多有一個(gè)public 類(lèi)。 set classpath=D:jdkjrelib;.;java 和 classjava Bird獨(dú)行風(fēng)格(大括號(hào)獨(dú)占行)和行尾風(fēng)格(左大擴(kuò)號(hào)在上一行行尾,右大括號(hào)獨(dú)占行)二、選擇題三、閱讀程序1. (a)

2、。(b)兩個(gè)字節(jié)碼,分別是和。(c)得至U “ NoSuchMethodError”,得到“ NoClassDefFoundError: Xiti/class ” ,得到“您好,很高興認(rèn)識(shí)您 nice to meet you ”習(xí)題2(第2 章)一、問(wèn)答題 用來(lái)標(biāo)識(shí)類(lèi)名、變量名、方法名、類(lèi)型名、數(shù)組名、文件名的有效字符序列稱(chēng)為標(biāo)識(shí)符。標(biāo)識(shí)符由字母、下劃線(xiàn)、美元符號(hào)和數(shù)字組成,第一個(gè)字符不能是數(shù)字。false 不是標(biāo)識(shí)符。 關(guān)鍵字就是Java 語(yǔ)言中已經(jīng)被賦予特定意義的一些單詞,不可以把關(guān)鍵字作為名字來(lái)用。true 和 false 不是關(guān)鍵字。 6 個(gè)關(guān)鍵字: classimplements i

3、nterface enum extends abstract 。 boolean , char , byte , short , int , long , float , double 。. float常量必須用F或f為后綴。double常量用D或d為后綴,但允許省略后綴。5一維數(shù)組名.length 。二維數(shù)組名 .length 。二、選擇題1 C。2 ADF。3 B。4 BE。5 【代碼 2 】 【代碼3 】 【代碼4】 【代碼5】 。三、閱讀或調(diào)試程序1屬于操作題,解答略。2屬于操作題,解答略。3屬于操作題,解答略。 【代碼1】 : 4。 【代碼2】 : b0=1 。 【代碼1】 : 40

4、 。 【代碼2 】 : 7四、編寫(xiě)程序public class E 你我他public static void main(String args) public class E public static void main (String args ) char cStart= a ,cEnd= a;for(char c=cStart;c=cEnd;c+) +c);習(xí)題3(第3 章)、問(wèn)答題1 boolean 2不可以boolean. 不是必須的結(jié)束 while 語(yǔ)句的執(zhí)行可以二、選擇題1 A。 2C。3C。三、閱讀程序你, 蘋(píng), 甜Jeep 好好x=-5,y=-1四、編程序題public

5、class Xiti1 public static void main(String args) double sum=0,a=1;int i=1;while(i=20) sum=sum+a; i+;a=a*i;sum=+sum);public class Xiti2 public static void main(String args) int i,j;for(j=2;j=100;j+) for(i=2;ij/2) +j);class Xiti3 public static void main(String args) double sum=0,a=1,i=1;do sum=sum+a;i

6、+;a=i)*a;while(i=20);使用 do-while 循環(huán)計(jì)算的 sum=+sum);for(sum=0,i=1,a=1;i=20;i+) a=a*i);sum=sum+a;使用 for 循環(huán)計(jì)算的 sum=+sum);public class Xiti4 public static void main(String args) int sum=0,i,j;for(i=1;i=1000;i+) for(j=1,sum=0;ji;j+) if(i%j=0) sum=sum+j;if(sum=i) 完數(shù) :+i);public class Xiti5 public static voi

7、d main(String args) int m=8,item=m,i=1;long sum=0;for(i=1,sum=0,item=m;i=8888) break; 滿(mǎn)足條件的最大整數(shù):+(n-1);習(xí)題4(第4 章)一、問(wèn)答題1. 封裝、繼承和多態(tài)。2當(dāng)類(lèi)名由幾個(gè)單詞復(fù)合而成時(shí),每個(gè)單詞的首字母使用大寫(xiě)。 名字的首單詞的首字母使用小寫(xiě),如果變量的名字由多個(gè)單詞組成,從第 2 個(gè)單詞開(kāi)始的其它單詞的首字母使用大寫(xiě)。 屬性 行為7 用類(lèi)創(chuàng)建對(duì)象時(shí)。 一個(gè)類(lèi)中可以有多個(gè)方法具有相同的名字,但這些方法的參數(shù)必須不同,即或者是參數(shù)的個(gè)數(shù)不同,或者是參數(shù)的類(lèi)型不同。可以。 可以 。 不可以。10不

8、可以。11一個(gè)類(lèi)通過(guò)使用 new 運(yùn)算符可以創(chuàng)建多個(gè)不同的對(duì)象,不同的對(duì)象的實(shí)例變量將被分配不同的內(nèi)存空間。所有對(duì)象的類(lèi)變量都分配給相同的一處內(nèi)存,對(duì)象共享類(lèi)變量。12代表調(diào)用當(dāng)前方法的對(duì)象。不可以。二、選擇題1 B。2 D。3D。4 D。5 CD。6 【代碼 1 】 【代碼4】 。7 【代碼4】三、閱讀程序 【代碼 1】 : 1, 【代碼2】 : 121 , 【代碼 3】: 121。 sum=-100。27。【代碼 1】 :100 , 【代碼 2】: 。上機(jī)實(shí)習(xí)題目,解答略。上機(jī)實(shí)習(xí)題目,解答略。四、編程題public class CPU int speed;int getSpeed() r

9、eturn speed;public void setSpeed(int speed) = speed;public class HardDisk int amount;int getAmount() return amount;public void setAmount(int amount) = amount;public class PC CPU cpu;HardDisk HD;void setCPU(CPU cpu) = cpu;void setHardDisk(HardDisk HD) = HD;void show()CPU 速度 :+(); 硬盤(pán)容量 :+();public cla

10、ss Test public static void main(String args) CPU cpu = new CPU();HardDisk HD=new HardDisk();(2200);(200);PC pc =new PC();(cpu);(HD);();習(xí)題 5(第 5 章)一、問(wèn)答題1 不可以。2是。3不繼承。4聲明與父類(lèi)同名的成員變量。5子類(lèi)重寫(xiě)的方法類(lèi)型和父類(lèi)的方法的類(lèi)型一致或者是父類(lèi)的方法的類(lèi)型的子類(lèi)型,重寫(xiě)的方法的名字、參數(shù)個(gè)數(shù)、參數(shù)的類(lèi)型和父類(lèi)的方法完全相同。重寫(xiě)方法的目的是隱藏繼承的方法,子類(lèi)通過(guò)方法的重寫(xiě)可以把父類(lèi)的狀態(tài)和行為改變?yōu)樽陨淼臓顟B(tài)和行為。6不可以。

11、abstract 類(lèi)。 上轉(zhuǎn)型對(duì)象不能操作子類(lèi)新增的成員變量, 不能調(diào)用子類(lèi)新增的方法。上轉(zhuǎn)型對(duì)象可以訪問(wèn)子類(lèi)繼承或隱藏的成員變量,可以調(diào)用子類(lèi)繼承的方法或子類(lèi)重寫(xiě)的實(shí)例方法。9通過(guò)重寫(xiě)方法。10面向抽象編程目的是為了應(yīng)對(duì)用戶(hù)需求的變化,核心是讓類(lèi)中每種可能的變化對(duì)應(yīng)地交給抽象類(lèi)的一個(gè)子類(lèi)類(lèi)去負(fù)責(zé),從而讓該類(lèi)的設(shè)計(jì) 者不去關(guān)心具體實(shí)現(xiàn)。二、選擇題1C。 2D。3 CD。4D。 5 B。 6 B。7D。 8 B。9A。三、閱讀程序【 代碼1】 :。 【代碼2 】 : ?!?代碼1】 :11。 【代碼2 】 : 11 ?!?代碼1】 :。 【代碼2 】 : 12。【 代碼 3】: 。 【代碼 4

12、】 : 9 ?!?代碼1】 :120。 【代碼 2 】 : 120。 【 代碼3 】: -100 。四、編程題public abstract class Animal public abstract void cry();public abstract String getAnimalName();public class Simulator public void playSound(Animal animal) 現(xiàn)在播放 +()+ 類(lèi)的聲音 :);();public class Dog extends Animal public void cry() 汪汪 . 汪汪);一、問(wèn)答題1 不能。

13、2不能。public String getAnimalName() return 狗;public class Cat extends Animal public void cry() 喵喵 . 喵喵 );public String getAnimalName() return 貓;public class Example5_13 public static void main(String args) Simulator simulator = new Simulator();(new Dog();(new Cat();6(第6 章)3可以把實(shí)現(xiàn)某一接口的類(lèi)創(chuàng)建的對(duì)象的引用賦給該接口聲明的接

14、口變量中。那么該接口變量就可以調(diào)用被類(lèi)實(shí)現(xiàn)的接口中的方法。4不可以。5可以。二、選擇題 D。 2 AB。 3 B。三、閱讀程序 【 代碼 1】 : 。 【代碼 2 】 : 8 。 【代碼 1】 : 18。 【代碼 2】 : 15。四、編程題public interface Animal public abstract void cry();public abstract String getAnimalName();public class Simulator public void playSound(Animal animal) 現(xiàn)在播放 +()+ 類(lèi)的聲音 :);();public cl

15、ass Dog implements Animal public void cry() 汪汪 . 汪汪 );public String getAnimalName() return 狗;public class Cat implements Animal public void cry() 喵喵 . 喵喵 );public String getAnimalName() return 貓;public class Example5_13 public static void main(String args) Simulator simulator = new Simulator();(new

16、Dog();(new Cat();7(第 7 章)一、問(wèn)答題1 有效。2可以。3不可以。4一定是。二、選擇題 C。 2 C。三、閱讀程序 大家好,祝工作順利! p 是接口變量。 你好 fine thanks 。 屬于上機(jī)實(shí)習(xí)程序,解答略。四、編程題import .*;public class E public static void main (String args )Scanner reader = new Scanner;double sum = 0;int m = 0;while()double x = ();assert x 100:數(shù)據(jù)不合理;m = m+1;sum = sum+x

17、;%d 個(gè)數(shù)的和為 %fn,m,sum);%d 個(gè)數(shù)的平均值是%fn,m,sum/m);習(xí)題 8(第 8 章) 一、問(wèn)答題1 不是。 hello 是。 4 和 3。 false 和 true 。4負(fù)數(shù)。是true 。 3 和-1 。7會(huì)發(fā)生NumberFormatException 異常。二、選擇題 A。 2 C。 3 B。 4 D。 5 C。三、閱讀程序 【 代碼】 :蘋(píng)果。 【 代碼】 : Love:Game。 【代碼 1】: 15。 【代碼2】: abc 我們?!?代碼】:13579?!?代碼】:9javaHello 。屬于上機(jī)實(shí)習(xí)程序,解答略。屬于上機(jī)實(shí)習(xí)程序,解答略。四、編程題 pu

18、blic class E public static void main (String args ) String s1,s2,t1=ABCDabcd;s1=();s2=();String s3=(s2);public class E public static void main (String args ) String s=ABCDabcd;char cStart=(0);char cEnd = ()-1);import .*;public class E public static void main (String args ) int year1,month1,day1,year

19、2,month2,day2;try year1=(args0);month1=(args1);day1=(args2);year2=(args3);month2=(args4);day2=(args5);catch(NumberFormatException e) year1=2012;month1=0;day1=1;year2=2018;month2=0;day2=1;Calendar calendar=();(year1,month1-1,day1);long timeYear1=();(year2,month2-1,day2);long timeYear2=();long相隔天數(shù)=(ti

20、meYear1-timeYear2)/(1000*60*60*24);”+year1+ 年+month1+月+day1+日和+year2+年 +month2+ 月 +day2+ 日相隔 +相隔天數(shù) + 天);import .*;public class E public static void main (String args ) double a=0,b=0,c=0;a=12;b=24;c=;c=;c=(1);c=(8); public class E public static void main (String args ) String str = ab123you你是誰(shuí) ;Stri

21、ng regex = D+;str = (regex,);import .*;public class E public static void main(String args) String cost = 數(shù)學(xué) 87 分,物理 76分,英語(yǔ) 96分;Scanner scanner = new Scanner(cost);CF09.+);double sum=0;int count =0;while()try double score = ();count+;sum = sum+score;catch(InputMismatchException exp)String t = (); 總分

22、:+sum+ 分 ); 平均分 :+sum/count+ 分 );9(第 9 章)1. Frame容器的默認(rèn)布局是 BorderLayout布局。2不可以。 ActionEvent 。 DocumentEvent。 5 個(gè)。 MouseMotionListener 。二、選擇題 C。 2 A。 3 A。 4 D。 5 C。三、編程題 import .*;import .*;import class E public static void main(String args) Computer fr=new Computer();class Computer extends JFrame imp

23、lements DocumentListener JTextArea text1,text2;int count=1;double sum=0,aver=0;Computer() setLayout(new FlowLayout();text1=new JTextArea(6,20);text2=new JTextArea(6,20);add(new JScrollPane(text1);add(new JScrollPane(text2);(false);().addDocumentListener(this);setSize(300,320);setVisible(true);valida

24、te();setDefaultCloseOperation;public void changedUpdate(DocumentEvent e) String s=();String a =(A09.+);sum=0;aver=0;for(int i=0;i=0) m=m-1;(m);int c=();if(c=0)else m=m-1;(m);byte cc=new byte2;(cc);String(cc);catch(Exception exp)import .*;public class E public static void main(String args ) File file

25、=new File();File tempFile=new File();try FileReader inOne=new FileReader(file);BufferedReader inTwo= new BufferedReader(inOne);FileWriter tofile=new FileWriter(tempFile);BufferedWriter out= new BufferedWriter(tofile);String s=null;int i=0;s=();while(s!=null) i+;(i+ +s);();s=();();();();();();catch(I

26、OException e)import .*;import .*;public class E public static void main(String args) File file = new File();Scanner sc = null;double sum=0;int count = 0;try sc = new Scanner(file);CF09.+);while()try double price = ();count+;sum = sum+price;catch(InputMismatchException exp) String t = (); 平均價(jià)格:+sum/c

27、ount);catch(Exception exp) 習(xí)題11 (第11章)一、問(wèn)答題.在MySQ段裝目錄的bin子目錄下 鍵入mysqld或mysqld -nt 啟 動(dòng)MySQ擻據(jù)庫(kù)服務(wù)器。.復(fù)制到JDK的擴(kuò)展目錄中(即JAVA_HOME境變量指定的JDK,見(jiàn) 第 1 章的),比如:E:jrelibext 。.減輕數(shù)據(jù)庫(kù)內(nèi)部SQL語(yǔ)句解釋器的負(fù)擔(dān)。.事務(wù)由一組SQL語(yǔ)句組成,所謂事務(wù)處理是指:應(yīng)用程序保證事 務(wù)中的SQL語(yǔ)句要么全部都執(zhí)行,要么一個(gè)都不執(zhí)行。事務(wù)處理步驟是 調(diào)用:(1)連接對(duì)象用setAutoCommit()方法關(guān)閉自動(dòng)提交模式,(2)連 接對(duì)象用commit。方法處理事務(wù),

28、(3)連接對(duì)象用rollback。方法處理事務(wù)失敗。二、編程題.同時(shí)用到了例子2中的GetDBConnection類(lèi)。 import .*;import .*;public class BianCheng1 public static void main(String args) Connection con;Statement sql;ResultSet rs;con = (students,root,);if(con = null ) return;String sqlStr =select * from mess order by birthday;try sql=();rs = (sq

29、lStr);while() String number=(1);String name=(2);Date date=(3);float height=(4);%st,number);%st,name);%st,date);%.2fn,height);();catch(SQLException e) . 同時(shí)用到了例子6 中的 Query 類(lèi)。import .*;public class BianCheng2 public static void main(String args) String tableHead;String content;JTable table ;JFrame win=

30、 new JFrame();Query findRecord = new Query();(args0);(select * from +args1);content = ();tableHead=();table = new JTable(content,tableHead);(new JScrollPane(table);(12,100,400,200);(true); 習(xí)題12(第12 章)一、問(wèn)答題1 4 種狀態(tài):新建、運(yùn)行、中斷和死亡。2.有4種原因的中斷:(1) JVM將CPUS源從當(dāng)前線(xiàn)程切換給其他線(xiàn)程, 使本線(xiàn)程讓出CPU的使用權(quán)處于中斷狀態(tài)。(2)線(xiàn)程使用CPUS源期間, 執(zhí)

31、行了 sleep(int millsecond) 方法,使當(dāng)前線(xiàn)程進(jìn)入休眠狀態(tài)。( 3)線(xiàn)程使用CPUS源期間,執(zhí)行了 wait()方法,使得當(dāng)前線(xiàn)程進(jìn)入等待狀態(tài)。(4)線(xiàn)程使用CPU資源期間,執(zhí)行某個(gè)操作進(jìn)入阻塞狀態(tài),比如執(zhí)行讀/ 寫(xiě)操作引起阻塞。3 死亡狀態(tài),不能再調(diào)用 start() 方法。4新建和死亡狀態(tài)。兩種方法:用Thread 類(lèi)或其子類(lèi)。使用setPrority(int grade) 方法。 Java 使我們可以創(chuàng)建多個(gè)線(xiàn)程, 在處理多線(xiàn)程問(wèn)題時(shí), 我們必須注意這樣一個(gè)問(wèn)題:當(dāng)兩個(gè)或多個(gè)線(xiàn)程同時(shí)訪問(wèn)同一個(gè)變量,并且一個(gè)線(xiàn)程需要修改這個(gè)變量。我們應(yīng)對(duì)這樣的問(wèn)題作出處理,否則可能發(fā)生

32、混亂。 當(dāng)一個(gè)線(xiàn)程使用的同步方法中用到某個(gè)變量,而此變量又需要其它線(xiàn)程修改后才能符合本線(xiàn)程的需要,那么可以在同步方法中使用 wait() 方法。使用 wait 方法可以中斷方法的執(zhí)行,使本線(xiàn)程等待,暫時(shí)讓出 CPU的使用權(quán),并允許其它線(xiàn)程使用這個(gè)同步方法。其它線(xiàn)程如果在使用這個(gè)同步方法時(shí)不需要等待,那么它使用完這個(gè)同步方法的同時(shí),應(yīng)當(dāng)用notifyAll() 方法通知所有的由于使用這個(gè)同步方法而處于等待的線(xiàn)程結(jié)束等待。9不合理。10.“吵醒”休眠的線(xiàn)程。一個(gè)占有CPUS源的線(xiàn)程可以讓休眠的線(xiàn)程調(diào)用 interrupt 方 法 “ 吵 醒 ” 自 己 , 即 導(dǎo) 致 休 眠 的 線(xiàn) 程 發(fā) 生I

33、nterruptedException 異常,從而結(jié)束休眠,重新排隊(duì)等待CP璇源。二、選擇題12 A。 3 三、閱讀程序1屬于上機(jī)調(diào)試題目,解答略。2屬于上機(jī)調(diào)試題目,解答略。3屬于上機(jī)調(diào)試題目,解答略。4屬于上機(jī)調(diào)試題目,解答略。5屬于上機(jī)調(diào)試題目,解答略。6屬于上機(jī)調(diào)試題目,解答略7 【代碼】 : BA。8屬于上機(jī)調(diào)試題目,解答略四、編寫(xiě)程序1. public class E public static void main(String args) Cinema a=new Cinema(); TOC o 1-5 h z class TicketSeller參照本章例子6參照本章例子9習(xí)題

34、13(第13 章)一、問(wèn)答題一個(gè)URL對(duì)象通常包含最基本的三部分信息:協(xié)議、地址、資源。URLX寸象調(diào)用Inputstream openStream()方法可以返回一個(gè)輸入流,該輸入流指向URL對(duì)象所包含的資源。通過(guò)該輸入流可以將服務(wù)器上的 資源信息讀入到客戶(hù)端。3客戶(hù)端的套接字和服務(wù)器端的套接字通過(guò)輸入、輸出流互相連接后進(jìn)行通信。使用方法accept() , accept() 會(huì)返回一個(gè)和客戶(hù)端Socket 對(duì)象相連接的 Socket 對(duì)象。 accept 方法會(huì)堵塞線(xiàn)程的繼續(xù)執(zhí)行, 直到接收到客戶(hù)的呼叫。域名/IP 。四、編程題(1)客戶(hù)端import .*;import .*;impor

35、t .*;import .*;public class Client public static void main(String args) new ComputerClient();class ComputerClient extends Frame implements Runnable,ActionListener Button connection,send;TextField inputText,showResult;Socket socket=null;DataInputStream in=null;DataOutputStream out=null;Thread thread;

36、ComputerClient() socket=new Socket();setLayout(new FlowLayout();Box box=();connection=new Button( 連接服務(wù)器);send=new Button( 發(fā)送 );(false);inputText=new TextField(12);showResult=new TextField(12);(connection);(new Label( 輸入三角形三邊的長(zhǎng)度, 用逗號(hào)或空格分隔 :);(inputText);(send);(new Label( 收到的結(jié)果: );(showResult);(this)

37、;(this);thread=new Thread(this);add(box);setBounds(10,30,300,400);setVisible(true);validate();addWindowListener(new WindowAdapter() public void windowClosing(WindowEvente) (0););public void actionPerformed(ActionEvent e) if()=connection) try ;import .*;import .*;public class Server public static voi

38、d main(String args) ServerSocket server=null;Server_thread thread;Socket you=null;while(true) try server=new ServerSocket(4331);catch(IOException e1) 正在監(jiān)聽(tīng) ); tart(); oubleValue();i+;catch(NumberFormatException e) ( 請(qǐng)輸入數(shù)字字符);quesion=true;if(quesion=false) double p=(a0+a1+a2)/;( +(p*(p-a0)*(p-a1)*(p-a

39、2);catch (IOException e) 客戶(hù)離開(kāi) );return;客戶(hù)端import .*;import .*;import .*;import .*;public class Client public static void main(String args) new ChatClient();class ChatClient extends Frame implementsRunnable,ActionListener Button connection,send;TextField inputName,inputContent;TextArea chatResult;Soc

40、ket socket=null;DataInputStream in=null;DataOutputStream out=null;Thread thread;String name=;public ChatClient () socket=new Socket();Box box1=();connection=new Button( 連接服務(wù)器);send=new Button( 發(fā)送 );(false);inputName=new TextField(6);inputContent=new TextField(22);chatResult=new TextArea();(new Label

41、( 輸入妮稱(chēng) :);(inputName);(connection);Box box2=();(new Label( 輸入聊天內(nèi)容:);(inputContent);(send);(this);(this);thread=new Thread(this);add(box1,;add(box2,;add(chatResult,;setBounds(10,30,400,280);setVisible(true);validate();addWindowListener(new WindowAdapter() public void windowClosing(WindowEvent e) (0);

42、);public void actionPerformed(ActionEvent e) if()=connection) try if()else InetAddress address=();InetSocketAddresssocketAddress=newInetSocketAddress(address,666);(socketAddress);in =new DataInputStream();out = new DataOutputStream();name=();(姓名 :+name);(true);if(!()thread=new Thread(this);();catch

43、(IOException ee)if()=send) String s=();if(s!=null) try (聊天內(nèi)容 :+name+:+s);catch(IOException e1)public void run() String s=null;while(true) try s=();(n+s);catch(IOException e) (與服務(wù)器已斷開(kāi));try ();catch(Exception exp) break;服務(wù)器端import .*;import .*;import .*;public class ChatServer public static void main(

44、String args) ServerSocket server=null;Socket you=null;Hashtable peopleList;peopleList=new Hashtable();while(true) try server=new ServerSocket(666);catch(IOException e1) 正在監(jiān)聽(tīng) );try you=();InetAddress address=();客戶(hù)的 IP:+address);catch (IOException e) if(you!=null)peopleThread=newServer_threadServer_th

45、read(you,peopleList);();else continue;class Server_thread extends Thread String name=null;Socket socket=null;File file=null;DataOutputStream out=null;DataInputStream in=null;Hashtable peopleList=null;Server_thread(Socket t,Hashtable list) peopleList=list;socket=t;try in=new DataInputStream();out=new

46、 DataOutputStream();catch (IOException e) public void run() while(true) String s=null;trys=();if(姓名 :) name=s;boolean boo=(name);if(boo=false) (name,this);else (請(qǐng)換妮稱(chēng) :);();break;else if( 聊天內(nèi)容 ) String message=(:)+1);Enumeration chatPersonList=();while() (Server_thread)().( 聊天內(nèi)容 :+ message);catch(IOE

47、xception ee) Enumeration chatPersonList=();while() tryServer_threadth=(Server_thread)();if(th!=this&() 客戶(hù)離線(xiàn) :+name);catch(IOException eee)(name);try ();catch(IOException eee)客戶(hù)離開(kāi)了 );break;import .*;import .*;import .*;implementsimport class BroadCastWord extends FrameActionListener int port;InetAddr

48、ess group=null;MulticastSocket socket=null;Timer time=null;FileDialog open=null;Button select, 開(kāi)始廣播 , 停止廣播 ;File file=null;String FileDir=null,fileName=null;FileReader in=null;BufferedReader bufferIn=null;int token=0; TOC o 1-5 h z TextArea 顯示正在播放內(nèi)容 , 顯示已播放的內(nèi)容;public BroadCastWord() super( 單詞廣播系統(tǒng));s

49、elect=new Button( 選擇要廣播的文件);開(kāi)始廣播=new Button( 開(kāi)始廣播);停止廣播=new Button( 停止廣播);(this);開(kāi)始廣播 .addActionListener(this);停止廣播 .addActionListener(this);time=new Timer(2000,this);open=new FileDialog(this, 選擇要廣播的文件顯示正在播放內(nèi)容=new TextArea(10,10);顯示正在播放內(nèi)容.setForeground;顯示已播放的內(nèi)容=new TextArea(10,10);Panel north=new Panel();(select);( 開(kāi)始廣播);( 停止廣播);add(north,;Panel center=new Panel();(new GridLayout(1,2);( 顯示正在播放內(nèi)容);( 顯示已播放的內(nèi)容);add(center,;validate();try port=5000;group=();socket=new MulticastSocket(port);(1);(group);catch(Exception e) Error: + e);setBounds(100,50,360,380)

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論