91av视频/亚洲h视频/操亚洲美女/外国一级黄色毛片 - 国产三级三级三级三级

資源簡介

使用JAVA開發的網絡聊天程序,帶有UI界面以及客戶端和服務器端的全部代碼,適合于課程設計和JAVA的Socket編程學習,通信協議為IP。

資源截圖

代碼片段和文件信息



//客戶端部分
import?java.awt.frame;
import?java.awt.TextArea;
import?java.awt.TextField;
import?java.awt.Toolkit;
import?java.awt.event.ActionEvent;
import?java.awt.event.ActionListener;
import?java.awt.event.WindowAdapter;
import?java.awt.event.WindowEvent;
import?java.io.DataInputStream;
import?java.io.DataOutputStream;
import?java.io.EOFException;
import?java.io.IOException;
import?java.net.Socket;
import?java.net.SocketException;
import?java.net.UnknownHostException;

import?javax.swing.JButton;
import?javax.swing.JPanel;

public?class?ChatClient?extends?frame?{

Socket?socket?=?null;

TextField?inputChat?=?new?TextField();?//?定義文本框用來輸入數據

TextArea?showChat?=?new?TextArea();?//?展示數據的地方

JButton?submit?=?new?JButton(“發送“);

JPanel?pan?=?new?JPanel();

DataInputStream?dis?=?null;?//?接收流

DataOutputStream?dos?=?null;?//?輸出流

private?String?c_name?=?null;

private?static?boolean?isRun?=?false;

private?boolean?flag?=?true;?//?讓c_name的傳遞只有一次

public?ChatClient()?{
}

public?static?void?main(String[]?args)?{
new?ChatClient().launchframe();
}

public?ChatClient(String?name)?{
this.c_name?=?name;
this.launchframe();
}

public?void?launchframe()?{?//?Swing?界面
this.settitle(“局域網聊天系統“);

int?width?=?510;
int?high?=?360;

this.setLayout(null);
this.setSize(width?high);

showChat.setBounds(5?5?490?295);
pan.setBounds(5?305?490?45);

pan.setLayout(null);
inputChat.setBounds(5?5?400?40);
submit.setBounds(405?5?95?40);

//?居中地位
int?w?=?(Toolkit.getDefaultToolkit().getScreenSize().width?-?width)?/?2;
int?h?=?(Toolkit.getDefaultToolkit().getScreenSize().height?-?high)?/?2;

pan.add(inputChat);
pan.add(submit);

this.add(showChat);
this.add(pan);

this.setLocation(w?h);

this.setVisible(true);

addWindowListener(new?WindowAdapter()?{
@Override
public?void?windowClosing(WindowEvent?e)?{
disconnect();
System.exit(0);
}
});

inputChat.addActionListener(new?TextFieldListener());?//?輸入窗口中添加監聽
submit.addActionListener(new?TextFieldListener());?//?輸入窗口中添加監聽

connectToServer();?//?連接服務器

Thread?clientThread?=?new?Thread(new?ClientThread());

clientThread.start();?//?啟動客戶端線程
}

private?void?connectToServer()?{
try?{
socket?=?new?Socket(“125.221.225.105“?8888);

dis?=?new?DataInputStream(socket.getInputStream());

dos?=?new?DataOutputStream(socket.getOutputStream());
isRun?=?true;
}?catch?(UnknownHostException?e)?{
e.printStackTrace();
}?catch?(IOException?e)?{
e.printStackTrace();
}
}

public?void?disconnect()?{?//?如果沒連接上服務器則關閉輸入輸出流和客戶端套接字

//?關閉各種流之前必須先關閉接受線程
try?{
if?(dos?!=?null)?{
dos.close();
}
if?(dis?!=?null)?{
dis.close();
}
if?(socket?!=?null)?{
socket.close();
}
}?catch?(IOException?e)?{
e.printStackTrace();
}
}

private?class?ClientThread?implements

?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件????????4408??2013-12-27?21:26??ChatClient.java
?????文件????????3923??2013-12-27?21:26??ChatServer.java
?????文件????????2102??2013-12-27?21:26??Register.java

評論

共有 條評論