• 大小: 21KB
    文件类型: .zip
    金币: 1
    下载: 0 次
    发布日期: 2021-06-08
  • 语言: 其他
  • 标签: socket通信  

资源简介

网络上的两个程序通过一个双向的通信连接实现数据的交换,这个连接的一端称为一个socket。 建立网络通信连接至少要一对端口号(socket)。socket本质是编程接口(API),对TCP/IP的封装,TCP/IP也要提供可供程序员做网络开发所用的接口,这就是Socket编程接口;HTTP是轿车,提供了封装或者显示数据的具体形式;Socket是发动机,提供了网络通信的能力。

资源截图

代码片段和文件信息

package ChessGame;

import java.awt.Color;
import java.awt.Graphics;
import java.awt.Image;
import java.awt.event.MouseEvent;
import java.awt.event.MouseListener;
import java.io.BufferedReader;
import java.io.DataInputStream;
import java.io.DataOutputStream;
import java.io.IOException;
import java.net.Socket;
import java.net.UnknownHostException;
import java.util.ArrayList;

import javax.swing.Jframe;
import javax.swing.JOptionPane;
import javax.swing.Timer;

import util.CloseUtil;
import util.GameUtil;

public class ChessGame1 extends Jframe implements MouseListener {
private int blackcount = 0;//记录赢的局数
private int whitecount = 0;
private boolean flag = true;
private boolean whitewin;
public BufferedReader console;
public static DataOutputStream dos;//接收输出
public boolean isRunning = true;
private boolean flash = false;
public boolean tp = true;
public static DataInputStream dis;//接收输入
public int ax = 0;
public int ay = 0;
public Timer time;
private ArrayList blacklist;
private ArrayList whitelist;

public ChessGame1() throws UnknownHostException IOException {
settitle(“五子棋“);
setSize(700 750);
setResizable(false);
setLocationRelativeTo(null);
setDefaultCloseOperation(EXIT_ON_CLOSE);
blacklist = new ArrayList();
whitelist = new ArrayList();
this.addMouseListener(this);// 增加鼠标监听器
new Thread(new Runnable() {// 接收坐标线程
@Override
public void run() {
while (isRunning) {
tp=true;
try {
ax = dis.readInt();
ay = dis.readInt();
if (ax != 0 && flag == false) {
tp=!tp;
whitelist.add(new mypoint(ax ay));
repaint();
} else if (ax != 0 && flag == true) {
tp=!tp;
blacklist.add(new mypoint(ax ay));
repaint();
}
} catch (IOException e2) {
// TODO 自动生成的 catch 块
// e.printStackTrace();
isRunning = false;
CloseUtil.closeAll(dis);
}

}
}
}).start();
;
}

@Override

public void paint(Graphics g) {// 绘图

flag = !flag;
if (flash == true) {
super.paint(g);
}
g.setColor(new Color(180 150 100));
g.fillRect(0 0 700 750);
g.setColor(Color.black);
flash = false;
for (int i = 2; i <= 30; i++) {
g.drawLine(40 20 * i 600 20 * i);// 横线
g.drawLine(20 * i 40 20 * i 600);// 竖线
}

Image img = GameUtil.getImage(“images/2.1.png“);
for (int i = 0; i < blacklist.size(); i++) {// 绘画黑棋

g.drawImage(img (int) blacklist.get(i).getX() * 20 + 12 (int) blacklist.get(i).getY() * 20 + 32 null);
}

Image img1 = GameUtil.getImage(“images/1.1.png“);
for (int i = 0; i < whitelist.size(); i++) {// 绘画白棋

g.drawImage(img1 (int) whitelist.get(i).getX() * 20 + 12 (int) whitelist.get(i).getY() * 20 + 32 null);
}
this.checkwin(blacklist 0 0 0 0);// 判断输赢
this.checkwin(whitelist 0 0 0 1);
g.setColor(Color.black);
Str

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     目录           0  2018-03-07 20:27  FiveChess1.1\
     文件         301  2018-03-07 20:27  FiveChess1.1\.classpath
     文件         388  2018-03-07 20:27  FiveChess1.1\.project
     目录           0  2018-03-07 20:27  FiveChess1.1\.settings\
     文件         598  2018-03-07 20:27  FiveChess1.1\.settings\org.eclipse.jdt.core.prefs
     目录           0  2018-03-07 20:27  FiveChess1.1\bin\
     目录           0  2018-03-07 20:27  FiveChess1.1\bin\ChessGame\
     文件        1513  2018-03-07 20:27  FiveChess1.1\bin\ChessGame\ChessGame1$1.class
     文件        8370  2018-03-07 20:27  FiveChess1.1\bin\ChessGame\ChessGame1.class
     文件         517  2018-03-07 20:27  FiveChess1.1\bin\ChessGame\mypoint.class
     目录           0  2018-03-07 20:27  FiveChess1.1\bin\images\
     文件         684  2018-03-07 20:27  FiveChess1.1\bin\images\1.1.png
     文件         846  2018-03-07 20:27  FiveChess1.1\bin\images\2.1.png
     目录           0  2018-03-07 20:27  FiveChess1.1\bin\net\
     目录           0  2018-03-07 20:27  FiveChess1.1\bin\net\tcp\
     文件        2504  2018-03-07 20:27  FiveChess1.1\bin\net\tcp\Server$MyChannel.class
     文件        1397  2018-03-07 20:27  FiveChess1.1\bin\net\tcp\Server.class
     目录           0  2018-03-07 20:27  FiveChess1.1\bin\util\
     文件         637  2018-03-07 20:27  FiveChess1.1\bin\util\CloseUtil.class
     文件         973  2018-03-07 20:27  FiveChess1.1\bin\util\GameUtil.class
     目录           0  2018-03-07 20:27  FiveChess1.1\src\
     目录           0  2018-03-07 20:27  FiveChess1.1\src\ChessGame\
     文件       10531  2018-03-07 20:27  FiveChess1.1\src\ChessGame\ChessGame1.java
     目录           0  2018-03-07 20:27  FiveChess1.1\src\images\
     文件         684  2018-03-07 20:27  FiveChess1.1\src\images\1.1.png
     文件         846  2018-03-07 20:27  FiveChess1.1\src\images\2.1.png
     目录           0  2018-03-07 20:27  FiveChess1.1\src\net\
     目录           0  2018-03-07 20:27  FiveChess1.1\src\net\tcp\
     文件        2520  2018-03-07 20:27  FiveChess1.1\src\net\tcp\Server.java
     目录           0  2018-03-07 20:27  FiveChess1.1\src\util\
     文件         377  2018-03-07 20:27  FiveChess1.1\src\util\CloseUtil.java
............此处省略1个文件信息

评论

共有 条评论