亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? chatapplet.java

?? 《java網(wǎng)絡編程實例》配書光盤.rar
?? JAVA
字號:
package chatapplet;import java.awt.*;import java.awt.event.*;import java.applet.*;import java.net.*;import java.io.*;import java.util.*;/** * Title:        客戶端Applet小程序 * Description:  利用Socket建立聊天室客戶端Applet小程序。 * Copyright:    Copyright (c) 2002 * Company:      中國農(nóng)業(yè)大學計算機系 * @author 彭波 * @version 1.0 */	public class chatApplet extends Applet {	  Panel panel1 = new Panel();					// 放置輸入姓名和連接的兩個按鈕	  BorderLayout borderLayout1 = new BorderLayout();	  Panel panel2 = new Panel();					// 放置聊天信息顯示和聊天人員列表	  Panel panel3 = new Panel();					// 放置發(fā)送信息區(qū)域	  FlowLayout flowLayout1 = new FlowLayout();	  FlowLayout flowLayout2 = new FlowLayout();	  Label label1 = new Label();	  TextField name_txt = new TextField(15);	  Button button1 = new Button();	  Button button2 = new Button();	  TextArea chat_txt = new TextArea(15,30);	  Label label2 = new Label();	  Button button3 = new Button();	  TextField msg_txt = new TextField(20);	  java.awt.List list1 = new java.awt.List(13);	  Socket soc=null;							// 定義連接套接字	  PrintStream ps=null;							// 定義打印輸出流	  Listen listen=null;							// 定義一個客戶端線程監(jiān)聽	  public void init(){							// 初始化圖形界面		resize(475,350);		this.setLayout(borderLayout1);		panel2.setLayout(flowLayout1);		panel3.setLayout(flowLayout2);		label1.setText("姓名:");		button1.setLabel("連接");		button2.setLabel("斷開連接");		chat_txt.setEditable(false);		panel2.setBackground(Color.cyan);		panel1.setBackground(Color.cyan);		label2.setText("聊天信息:");		button3.setLabel("發(fā)送");		msg_txt.setText("請輸入聊天信息");		panel3.setBackground(Color.cyan);		this.add(panel1, BorderLayout.NORTH);		panel1.add(label1, null);		panel1.add(name_txt, null);		panel1.add(button1, null);		panel1.add(button2, null);		this.add(panel2, BorderLayout.CENTER);		panel2.add(chat_txt, null);		panel2.add(list1, null);		this.add(panel3,  BorderLayout.SOUTH);		panel3.add(label2, null);		panel3.add(msg_txt, null);		panel3.add(button3, null);	  }	  public boolean action(Event evt,Object obj) {		// 事件處理代碼	    if(evt.target instanceof Button){		 String label=(String) obj;		 if(label.equals("連接")){					// 點擊連接		   if(soc==null){			try{			  soc=new Socket(InetAddress.getLocalHost(),8080);  // 使用端口8080實例化本地套接字			  System.out.println(soc);					   // 打印實例化結果			  ps=new PrintStream(soc.getOutputStream());	   // 將ps指向soc的輸出流			  StringBuffer info=new StringBuffer("INFO: ");	   // 定義字符緩沖存儲發(fā)送信息			  // 其中INFO為關鍵字讓服務器識別連接信息			  String userinfo=name_txt.getText()+":"+InetAddress.getLocalHost().toString();			  // 將name和ip用":"分開			  ps.println(info.append(userinfo));			  ps.flush();			  listen=new Listen(this,name_txt.getText(),soc);		// 實例化客戶端線程			  listen.start();								// 啟動線程			}			catch(IOException e){			  System.out.println("Error:"+e);			  disconnect();			}		   }		// end of if	      }		// end of if	      else if(label.equals("斷開連接")){					// 點擊斷開連接按鈕		   disconnect();	      }	      else if(label.equals("發(fā)送")){						// 點擊發(fā)送按鈕		   if(soc!=null) {		     StringBuffer msg=new StringBuffer("MSG: "); // 定義并實例化字符緩沖存儲發(fā)送聊天信息		     try {			  String msgtxt=new String(msg_txt.getText());		     }		     catch(Exception e){}		     ps.println(msg.append(msg_txt.getText()));			// 打印輸出流發(fā)送聊天信息		     ps.flush();		   }	      }	    }         return true;	  }		// end of method action	  public void disconnect(){								// 客戶端斷開連接方法	     if(soc!=null){		  try	{			listen.suspend();			ps.println("QUIT");				// 發(fā)送QUIT信息通知服務器斷開此次通訊			ps.flush();			soc.close();									// 關閉套接字		  }		  catch(IOException e) {		     System.out.println("Error:"+e);		  }		  finally { }		}		// end of if	  }	  class Listen extends Thread{				// 定義客戶端線程類用于監(jiān)聽服務器傳來的信息	    String name=null;						// 存儲客戶端連接后的name信息	    DataInputStream dis=null;				// 實現(xiàn)客戶端接收服務器數(shù)據(jù)的輸入流	    PrintStream ps=null;					// 實現(xiàn)從客戶端發(fā)送數(shù)據(jù)到服務器的打印輸出流	    Socket socket=null;					// 存儲客戶端的socket信息	    chatApplet parent=null;					// 存儲當前運行的chatApplet實例	    public Listen(chatApplet p,String n,Socket s) {	 // Listen類的構造器		  parent=p;		  name=n;		  socket=s;		  try{							// 實例化兩個數(shù)據(jù)流		    dis=new DataInputStream(s.getInputStream());		    ps=new PrintStream(s.getOutputStream());		  }		  catch(IOException e) {		    System.out.println("Error:"+e);		    parent.disconnect();		  }	    }		// end of Listen constractor	    public void run(){						// 定義線程run()方法		  String msg=null;		  while(true)	{		    try{msg=dis.readLine();}			// 讀取從服務器傳來的信息		    catch(IOException e) {			 System.out.println("Error:"+e);			 parent.disconnect();		    }		    if (msg==null) {					// 從服務器傳來的信息為空則斷開此次連接		      parent.listen=null;		      parent.soc=null;		      parent.list1.clear();		      return;		    }		    StringTokenizer st=new StringTokenizer(msg,":");	 // 讀取分段字符		    String keyword=st.nextToken();			 // 讀取信息頭(關鍵字)識別何種信息		    if(keyword.equals("PEOPLE")){			 // PEOPLE為服務器發(fā)送的客戶連接信息		       parent.list1.clear();			   while(st.hasMoreTokens()){			// 遍歷st取得目前所連接的客戶			     String str=st.nextToken();				 parent.list1.addItem(str);			   }		    }		    else if(keyword.equals("MSG")){			// MSG為服務器傳送的聊天信息,用于顯示		      String usr=st.nextToken();			  parent.chat_txt.appendText(usr);			  parent.chat_txt.appendText(st.nextToken("\0"));			  parent.chat_txt.appendText("\n\n");		    }		    else if(keyword.equals("QUIT")){			// QUIT為服務器關閉的信息,切斷連接		       System.out.println("Quit");		       try {			    parent.listen.stop();		         parent.listen=null;		         parent.soc.close();			    parent.soc=null;                }			  catch(IOException e) {             	    System.out.println("Error:"+e);             	  }			  parent.list1.clear();			  return;		    }	     }	   }			// end of run method	  }      		// end of Listen inner class	}			// end of chatApplet class

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美不卡视频一区| 日韩高清一区二区| 日本中文字幕一区二区有限公司| 国产精品综合久久| 欧美成人video| 亚洲少妇30p| 韩国一区二区三区| 欧美日韩亚洲丝袜制服| 国产精品久久三区| 久久激情五月激情| 欧美日韩一级片网站| 国产精品美女久久久久久久久| 男男gaygay亚洲| 欧美性受xxxx| 亚洲四区在线观看| 国产九色sp调教91| 日韩精品中文字幕一区二区三区 | 中文在线一区二区| 日本视频免费一区| 欧美日韩电影在线| 一卡二卡欧美日韩| 99久久久久久99| 中文字幕高清一区| 国产高清视频一区| 久久这里只有精品首页| 蜜桃一区二区三区四区| 7777精品伊人久久久大香线蕉超级流畅 | 国产一区二区不卡在线| 日韩欧美一级在线播放| 三级在线观看一区二区| 欧美日本在线一区| 亚洲成在线观看| 欧美性xxxxx极品少妇| 伊人性伊人情综合网| 91婷婷韩国欧美一区二区| 中文字幕一区二区在线观看| 成人毛片在线观看| 国产精品久久久99| 色中色一区二区| 亚洲裸体xxx| 在线观看欧美日本| 天天影视网天天综合色在线播放| 欧美色精品在线视频| 日韩一区精品视频| 亚洲精品国产精华液| eeuss影院一区二区三区| 国产精品蜜臀在线观看| 99国产精品久久久久久久久久| 亚洲日本免费电影| 欧美三区免费完整视频在线观看| 亚洲成人综合网站| 欧美成人一区二区| 成人一级片网址| 自拍偷拍亚洲综合| 欧美色区777第一页| 日韩专区一卡二卡| 久久久久久久国产精品影院| 成人激情小说乱人伦| 一区二区三区中文字幕精品精品| 欧美日韩精品免费观看视频| 久久99国产精品尤物| 国产精品青草久久| 欧美日韩国产免费一区二区| 久久99国内精品| 中文字幕在线一区二区三区| 欧美性猛交一区二区三区精品| 日韩二区三区四区| 国产精品久久夜| 7777精品伊人久久久大香线蕉超级流畅 | 久久精品国产精品亚洲综合| 日本一区二区三区视频视频| 在线视频你懂得一区| 国产一区二区在线看| 亚洲乱码中文字幕| 久久综合色天天久久综合图片| 91社区在线播放| 久久se这里有精品| 自拍偷自拍亚洲精品播放| 这里是久久伊人| zzijzzij亚洲日本少妇熟睡| 日韩精品成人一区二区在线| 国产欧美日韩亚州综合| 欧美精品 国产精品| 成人午夜在线播放| 久久国产尿小便嘘嘘| 九色综合狠狠综合久久| 一级女性全黄久久生活片免费| 2020日本不卡一区二区视频| 欧美午夜电影在线播放| 国产91精品露脸国语对白| 免费亚洲电影在线| 亚洲最色的网站| 国产精品区一区二区三区| 欧美mv和日韩mv的网站| 欧美三级欧美一级| 91麻豆高清视频| 成人美女在线观看| 国产精品自在欧美一区| 日本午夜一本久久久综合| 一个色妞综合视频在线观看| 国产精品久久影院| 久久久久97国产精华液好用吗| 日韩午夜精品电影| 欧美日本在线一区| 欧美日韩一级二级| 欧美性猛交xxxxxxxx| 色综合天天性综合| 99视频超级精品| 成人动漫一区二区在线| 国产成人av福利| 国产精品中文有码| 狠狠久久亚洲欧美| 韩国精品主播一区二区在线观看 | 欧美精品自拍偷拍| 欧美性色aⅴ视频一区日韩精品| 91无套直看片红桃| 26uuu色噜噜精品一区二区| 欧美狂野另类xxxxoooo| 欧美三级韩国三级日本三斤| 欧美色成人综合| 欧美精品少妇一区二区三区| 6080亚洲精品一区二区| 欧美一区二区成人| 日韩精品资源二区在线| 欧美成人福利视频| 国产欧美日产一区| 中文字幕一区二| 尤物视频一区二区| 日韩成人伦理电影在线观看| 免费成人在线影院| 国内精品伊人久久久久影院对白| 九九在线精品视频| 懂色av中文字幕一区二区三区| 北岛玲一区二区三区四区| 91九色最新地址| 制服丝袜亚洲色图| 欧美成人女星排行榜| 欧美国产日产图区| 一区二区成人在线观看| 日本三级亚洲精品| 国产精品一品二品| 色中色一区二区| 日韩女同互慰一区二区| 国产精品视频九色porn| 亚洲国产精品久久久男人的天堂 | 亚洲影视在线播放| 麻豆视频一区二区| av中文字幕亚洲| 91精品国产91久久久久久最新毛片 | 91精品国产黑色紧身裤美女| 久久久影视传媒| 一区二区三区小说| 美美哒免费高清在线观看视频一区二区| 国产老女人精品毛片久久| 91美女视频网站| 精品日韩99亚洲| 亚洲欧美电影院| 经典一区二区三区| 在线观看日韩av先锋影音电影院| 亚洲一区精品在线| 另类欧美日韩国产在线| 91热门视频在线观看| 日韩久久久精品| 亚洲国产欧美在线| 成人免费毛片嘿嘿连载视频| 91麻豆精品国产91久久久久久久久 | 欧美三级中文字幕| 国产欧美一二三区| 蜜桃在线一区二区三区| 日本韩国一区二区三区| 久久亚区不卡日本| 婷婷丁香激情综合| 色婷婷久久一区二区三区麻豆| 久久综合色天天久久综合图片| 偷拍日韩校园综合在线| 97久久久精品综合88久久| 精品av久久707| 三级久久三级久久| 色综合天天综合在线视频| 欧美极品aⅴ影院| 国产综合久久久久影院| 欧美电影在哪看比较好| 一区二区三区免费看视频| 国产精品一区二区久久精品爱涩| 欧美一区二区三区四区久久| 亚洲国产日韩在线一区模特| 色偷偷成人一区二区三区91| 欧美激情一区二区三区全黄| 国产乱国产乱300精品| 日韩欧美在线不卡| 亚洲成在线观看| 欧美色中文字幕| 亚洲一区二区三区激情| 欧美在线观看禁18| 亚洲一区二区在线观看视频| 91日韩精品一区| 亚洲夂夂婷婷色拍ww47| 欧美中文字幕久久| 亚洲一区二区免费视频| 欧美性色黄大片|