• JavaSE:在线考试系统(2)


    1.   创建模块(module):ExamSystemClient,用于存放客户端的代码

    2.   创建ClientInitClose.java, 用于客户端的初始化、关闭

     代码:

     1 package com.lagou.client;
     2 import java.io.IOException;
     3 import java.io.ObjectInputStream;
     4 import java.io.ObjectOutputStream;
     5 import java.net.InetAddress;
     6 import java.net.Socket;
     7 
     8 // 实现客户端的初始化和关闭操作
     9 public class ClientInitClose {
    10 
    11     private Socket s;
    12     private ObjectOutputStream oos;
    13     private ObjectInputStream ois;
    14 
    15     // 定义clientInit()方法, 实现客户端的初始化
    16     public void clientInit() throws IOException{
    17 
    18         // 1. 创建Socket类型的对象, 并指定服务器的通信地址 & 端口号
    19         s = new Socket(InetAddress.getLocalHost(), 8888);
    20 
    21         // 2. 使用输入输出流通信
    22         oos = new ObjectOutputStream(s.getOutputStream());
    23         ois = new ObjectInputStream(s.getInputStream());
    24         System.out.println("客户端已完成初始化 (成功连接服务器)!");
    25     }
    26 
    27     // 定义clientClose()方法, 实现客户端的关闭
    28     public void clientClose() throws IOException{
    29 
    30         // 3. 关闭Socket,并释放有关资源
    31         ois.close();
    32         oos.close();
    33         s.close();
    34         System.out.println("客户端成功关闭!");
    35     }
    36 }

    2.   创建ClientTest.java, 用于测试客户端的初始化和关闭功能

     代码:

     1 package com.lagou.client;
     2 
     3 import java.io.IOException;
     4 
     5 public class ClientTest {
     6 
     7     public static void main(String[] args) {
     8 
     9         ClientInitClose cic = null;
    10 
    11         try {
    12             // 1. 声明ClientInitClose类型的引用,指向该类型的对象
    13             cic = new ClientInitClose();
    14             // 2. 调用成员方法, 实现客户端的初始化操作
    15             cic.clientInit();
    16         } catch (IOException e) {
    17             e.printStackTrace();
    18         } finally {
    19             // 3. 调用成员方法, 实现客户端的关闭操作
    20             try {
    21                 cic.clientClose();
    22             } catch (IOException e) {
    23                 e.printStackTrace();
    24             }
    25         }
    26     }
    27 }

    运行效果:

    与此同时:

  • 相关阅读:
    系统信息查看命令
    item pipeline 实例:爬取360摄像图片
    scrapy之 downloader middleware
    scrapy 中用selector来提取数据的用法
    Live2D 看板娘
    Live2D 看板娘
    Live2D 看板娘
    Live2D 看板娘
    Live2D 看板娘
    Live2D 看板娘
  • 原文地址:https://www.cnblogs.com/JasperZhao/p/14972084.html
Copyright © 2020-2023  润新知