《基于GUI的网络通信程序设计》.doc
文本预览下载声明
PAGE2 / NUMPAGES2
《Java程序设计》实验报告--实验3
实验室: 2014 年 12 月 10 日
学院
计算机与信息学院
专业班级
姓名
成绩
课程
名称
Java程序设计
实验项目
名 称
实验三 基于GUI的网络通信程序设计
指导教师
教师评语
教师签名:
年 月 日
实验目的
1.掌握Java中GUI程序的编写,包括事件监听机制。
2.掌握Java的网络通信编程,ServerSocket,Socket类的使用。
3.掌握Java中多线程的编程,Thread类,Runnable接口的使用。
4.掌握用面向对象的方法分析和解决复杂问题。
实验原理
1. 利用java.awt和javax.swing包提供的各种组件实现服务器和客户端的界面设计。
2.使用套接字实现基于TCP协议的服务器和客户端。
3.为服务器和客户端界面中的有关组件添加消息相应,实现交互。
三、使用硬件、软件环境
PC 计算机一台,配置为CPU为2.6G,内存为4G,硬盘为1T,安装Windows8操作系统。
另外,使用JCreator,JDK1.8.0等软件
四、实验过程、步骤及原始记录(算法、原程序、测试结果,分析等)
1.实验过程:
首先实现界面的编写,之后使用套接字实现基于TCP协议的通信,再设置监视
器,为相应的组件添加消息相应。
2.源程序:
1.客户端程序:KeHuDuan.java
import java.awt.*;
import java.awt.event.*;
import java.util.*;
import java.io.*;
import java.net.*;
import javax.swing.*;
public class KeHuDuan{
public static void main(String[] args){
MyFrame client = new MyFrame();
client.setVisible(true);
client.setResizable(false);
client.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
}
}
class MyFrame extends JFrame{
JTextField ip;
JTextField port;
JTextField cin;
JTextArea content;
JButton connect;
JButton say;
Socket socket;
MyFrame(){
init();
ConnectListen cListener = new ConnectListen();
SayListen sListener = new SayListen();
connect.addActionListener(cListener);
say.addActionListener(sListener);
}
void init(){
setLayout(new FlowLayout());
setSize(400,400);
setLocation(800,100);
add(new JLabel(Serve ip));
ip = new JTextField(127.0.0.1,8);
add(ip);
add(new JLabel(Serve port));
port = new JTextField(8888,8);
add(port);
connect = new JButton(connect);
add(connect);
content = new JTextArea(16,35);
JScrollPane scroll = new JScrollPane(content);
add(scroll);
add(new Label(Say:));
cin = new JTextField(25);
add(cin);
say = new JButton(say);
add(say);
}
class ConnectListen impl
显示全部