资源简介
自己练手写的一个小的Java聊天软件,用到了线程,UI,IO,Socket等技术,需要的同学可以拿去参考一下

代码片段和文件信息
import java.awt.*;
import java.net.*;
import java.awt.event.*;
import java.io.*;
import javax.swing.*;
public class Myclient extends Jframe{
private static final long serialVersionUID = -8534220940655745976L;
static String name ;
JTextField jtxfield = null;
JTextArea jtxarea = null;
Socket s = null;
DataOutputStream dos = null;
DataInputStream dis = null;
JScrollPane jsp = null;
public static void main (String args[]){
name = JOptionPane.showInputDialog(“请输入您的昵称“);
new Myclient();
}
public Myclient(){
super(name);
jtxfield = new JTextField();
jtxarea = new JTextArea();
jsp = new JScrollPane(jtxarea);
jtxarea.setEditable(false);
Container con = this.getContentPane();
con.add(jspBorderLayout.CENTER);
con.add(jtxfieldBorderLayout.SOUTH);
pack();
setSize(300300);
setLocation(500300);
addWindowListener( new WindowAdapter(){
public void windowClosing( WindowEvent e){
unconnect();
System.exit(0);
}
});
jtxfield.addActionListener( new JTXListener() );
setVisible(true);
connect();
MyThread mt = new MyThread();
Thread t= new Thread(mt);
t.start();
}
private class JTXListener implements ActionListener{
public void actionPerformed( ActionEvent e ){
String str = jtxfield.getText().trim();
send( str );
jtxfield.setText( ““ ) ;
}
}
public void send( String str ){
try{
dos = new DataOutputStream (s.getOutputStream());
dos.writeUTF( name + “ 说:“ + str );
dos.flush();
}catch( IOException e ){
e.printStackTrace();
}
}
public void connect(){
try{
s = new Socket(“127.0.0.1“9876);
}catch( UnknownHostException e ){
e.printStackTrace();
}catch(IOException e){
e.printStackTrace();
}
}
private class MyThread implements Runnable{
public String recieveFromServer() {
String st = null;
try {
dis = new DataInputStream(s.getInputStream());
st = dis.readUTF();
} catch (IOException e) {
}
return st;
}
public void run() {
while (true) {
jtxarea.append(“\n“ + recieveFromServer() + “\n“);
}
}
}
public void unconnect(){
try{
dis.close();
dos.close();
s.close();
}catch( IOException e ){
e.printStackTrace();
}
}
}
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 232 2009-06-25 17:33 ChatProgram\.classpath
文件 387 2009-06-25 17:33 ChatProgram\.project
文件 642 2009-06-30 10:40 ChatProgram\bin\Myclient$1.class
文件 992 2009-06-30 10:40 ChatProgram\bin\Myclient$JTXListener.class
文件 1398 2009-06-30 10:40 ChatProgram\bin\Myclient$MyThread.class
文件 3427 2009-06-30 10:40 ChatProgram\bin\Myclient.class
文件 2491 2009-06-30 10:40 ChatProgram\bin\Server$ServerThread.class
文件 1511 2009-06-30 10:40 ChatProgram\bin\Server.class
文件 2378 2009-06-30 10:40 ChatProgram\src\Myclient.java
文件 1798 2009-06-30 10:40 ChatProgram\src\Server.java
目录 0 2009-06-30 10:38 ChatProgram\bin
目录 0 2009-06-30 10:38 ChatProgram\src
目录 0 2009-06-25 17:33 ChatProgram
----------- --------- ---------- ----- ----
15256 13
- 上一篇:java模拟操作系统
- 下一篇:java聊天系统 可以传送文件哈
相关资源
- java图片浏览器跨平台运行程序与源码
- 基于java的在线考试系统-毕业设计
- 微博系统(Java源码,servlet+jsp),适
- java串口通信全套完整代码-导入eclip
- jsonarray所必需的6个jar包.rar
- 三角网构TIN生成算法,Java语言实现
- java代码编写将excel数据导入到mysql数据
- Java写的cmm词法分析器源代码及javacc学
- JAVA JSP公司财务管理系统 源代码 论文
- JSP+MYSQL旅行社管理信息系统
- 推荐算法的JAVA实现
- 基于Java的酒店管理系统源码(毕业设
- java-图片识别 图片比较
- android毕业设计
- java23种设计模式+23个实例demo
- java Socket发送/接受报文
- JAVA828436
- java界面美化 提供多套皮肤直接使用
- 在线聊天系统(java代码)
- 基于Java的图书管理系统807185
- java中实现将页面数据导入Excel中
- java 企业销售管理系统
- java做的聊天系统(包括正规课程设计
- Java编写的qq聊天室
- 商店商品管理系统 JAVA写的 有界面
- JAVA开发聊天室程序
- 在linux系统下用java执行系统命令实例
- java期末考试试题两套(答案) 选择(
- JAVA3D编程示例(建模、交互)
- Java 文件加密传输
评论
共有 条评论