欢迎来到三一办公! | 帮助中心 三一办公31ppt.com(应用文档模板下载平台)
三一办公
全部分类
  • 办公文档>
  • PPT模板>
  • 建筑/施工/环境>
  • 毕业设计>
  • 工程图纸>
  • 教育教学>
  • 素材源码>
  • 生活休闲>
  • 临时分类>
  • ImageVerifierCode 换一换
    首页 三一办公 > 资源分类 > DOC文档下载  

    基于GUI的网络通信程序设计.doc

    • 资源ID:1180269       资源大小:172KB        全文页数:6页
    • 资源格式: DOC        下载积分:10金币
    快捷下载 游客一键下载
    会员登录下载
    三方登录下载: 微信开放平台登录 QQ登录  
    下载资源需要10金币
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    基于GUI的网络通信程序设计.doc

    Java程序设计实验报告-实验3实验室: 学院计算机与信息学院专业班级姓名成绩课程名称Java程序设计实验项目名 称 实验三 基于GUI的网络通信程序设计指导教师教师评语 教师签名: 年 月 日1、 实验目的1掌握Java中GUI程序的编写,包括事件监听机制。2掌握Java的网络通信编程,ServerSocket,Socket类的使用。3掌握Java中多线程的编程,Thread类,Runnable接口的使用。4掌握用面向对象的方法分析和解决复杂问题。2、 实验原理1. 利用java.awt和javax.swing包提供的各种组件实现服务器和客户端的界面设计。2使用套接字实现基于TCP协议的服务器和客户端。3.为服务器和客户端界面中的有关组件添加消息相应,实现交互。三、使用硬件、软件环境 PC 计算机一台,配置为CPU为2.6G,内存为4G,硬盘为1T,安装Windows8操作系统。另外,使用JCreator,JDK1.8.0等软件四、实验过程、步骤及原始记录<算法、原程序、测试结果,分析等> 1.实验过程: 首先实现界面的编写,之后使用套接字实现基于TCP协议的通信,再设置监视 器,为相应的组件添加消息相应。 2.源程序:1.客户端程序:KeHuDuan.javaimport java.awt.*;import java.awt.event.*;import java.util.*;import java.io.*;import .*;import javax.swing.*;public class KeHuDuanpublic static void main<String args>MyFrame client = new MyFrame<>client.setVisible<true>client.setResizable<false>client.setDefaultCloseOperation<JFrame.DISPOSE_ON_CLOSE>class MyFrame extends JFrameJTextField 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 implements ActionListenerint portNum;public void actionPerformed<ActionEvent e>connect.setEnabled<false>try portNum =Integer.parseInt<port.getText<>>socket = new Socket<ip.getText<>,portNum>ClientThread ct = new ClientThread<>ct.start<> catch <Exception ex> class SayListen implements ActionListenerString str;public void actionPerformed<ActionEvent e>try PrintWriter out = new PrintWriter<new BufferedWriter<new OutputStreamWriter<socket.getOutputStream<>>>,true>str=cin.getText<>if<!str.isEmpty<>>out.println<str>content.append<"me:"+str+"n">out.flush<>cin.setText<""> catch <Exception ex> class ClientThread extends Threadpublic void run<>try BufferedReader in = new BufferedReader<new InputStreamReader<socket.getInputStream<>>>String str;while<true>str = in.readLine<>/System.out.println <"a">content.append<str+"n"> catch <Exception ex> 2.服务器端程序:import java.awt.*;import java.awt.event.*;import java.util.*;import java.io.*;import .*;import javax.swing.*;public class FuWuQipublic static void main<String args>MyFrame serve = new MyFrame<>serve.setVisible<true>serve.setResizable<false>serve.setDefaultCloseOperation<JFrame.DISPOSE_ON_CLOSE>class MyFrame extends JFrameJTextField port;JButton start;JTextArea content;JTextField cin;JButton say;Socket socket;MyFrame<>init<>StartListen sListen = new StartListen<>SayListen stListen = new SayListen<>start.addActionListener<sListen>say.addActionListener<stListen>void init<> setLayout<new FlowLayout<>>setSize<400,400>setLocation<400,100>add<new JLabel<"Port:">>port = new JTextField<"8888",25>add<port>start = new JButton<"Start">add<start>content = new JTextArea<15,35>JScrollPane scroll = new JScrollPane<content>add<scroll>add<new JLabel<"Say:">>cin = new JTextField<26>add<cin>say = new JButton<"Say">add<say>class StartListen implements ActionListenerpublic void actionPerformed<ActionEvent e>start.setEnabled<false>try ServerSocket s = new ServerSocket<Integer.parseInt<port.getText<>>>socket = s.accept<>PrintWriter out = new PrintWriter<new BufferedWriter<new OutputStreamWriter<socket.getOutputStream<>>>,true>out.println<"连接成功">content.append<"连接成功"+"n">ServerThread st = new ServerThread<>st.start<> catch <Exception ex> class SayListen implements ActionListenerString str;public void actionPerformed<ActionEvent e>try PrintWriter out = new PrintWriter<new BufferedWriter<new OutputStreamWriter<socket.getOutputStream<>>>,true>str=cin.getText<>if<!str.isEmpty<>>out.println<str>content.append<"me:"+str+"n">out.flush<>cin.setText<""> catch <Exception ex> class ServerThread extends Threadpublic void run<>try BufferedReader in = new BufferedReader<new InputStreamReader<socket.getInputStream<>>>String str;while<true>str = in.readLine<>content.append<str+"n"> catch <Exception ex> 3. 测试结果:五、实验结论、分析、思考题与心得体会通过本次实验,我有以下几方面的收获、认识和体会:1.学会了编写带有图形化界面的程序。2.简单掌握了JFrame、JLabel、JTextField、JButton和JPanel等组件的方法。3. 能够独立解决部分编译和执行过程中的错误信息。4. 掌握事件处理的方法和常用的布局管理器。

    注意事项

    本文(基于GUI的网络通信程序设计.doc)为本站会员(李司机)主动上传,三一办公仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一办公(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    备案号:宁ICP备20000045号-2

    经营许可证:宁B2-20210002

    宁公网安备 64010402000987号

    三一办公
    收起
    展开