⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 tcpconnect.java

📁 ChipChat1.0——源代码以及程序用到的资源(程序入口主文件为ChipChat.java)(Eclipse3.1.2设计) UML建模图——为Rose建模图
💻 JAVA
字号:
import java.awt.Color;
import java.io.IOException;
import java.net.ServerSocket;
import java.net.Socket;

import javax.swing.JOptionPane;



/*
 * 线程类TCPConnect建立了对TCP端口的监听,并在接受到会话请求的时候打开一个
 * 会话应用程序,从而实现与对方点对点的单独通信.
 */
class TCPConnect extends Thread
{
	ServerSocket listen;
	ChipChat c;
	int port;
	String name;
	
	public TCPConnect(int TCP_PORT,ChipChat CC,String nickname)
	{
		name = new String(nickname);
		c = CC;
		port = TCP_PORT;
		this.start();
	}
	

	public void run()//run()实现了对指定的端口的监听
	{
		try
		{
			//初始化端口,将listen端口放在run()方法内,可以使得一机运行多个程序而不出现端口冲突
			listen = new ServerSocket(port);
			processMsg("正在监听TCP端口……");
		}catch(IOException e)
		{
			JOptionPane.showMessageDialog(null,"请不要在同一机器上运行多个CC","端口已被占用",JOptionPane.ERROR_MESSAGE);
			 processMsg("群聊功能仍可使用");
			e.printStackTrace();
		}
		try
		{
			while(true)
			{
				Socket client = listen.accept();//监听端口
				TCP_Frame TT = new TCP_Frame(client,name);//当接收到会话请求时打开会话程序
				TT.setVisible(true);
			}
		}catch(IOException e)
		{
			e.printStackTrace();
		}
	}
	
	
	public void processMsg(String str)//在应用程序的登陆信息框中显示信息
	{
		c.lstMsg.add(str);
	}
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -