最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

Java很詳細的個人解析版本:網(wǎng)絡(luò)編程,使用多線程實現(xiàn)1對1聊天,聊天室【詩書畫唱】

2020-08-07 00:33 作者:詩書畫唱  | 我要投稿

我和我文字的故事:開始寫作的契機是我想記錄我認為重要的一切!是為了不枉活過人生這一遭!是為了證明我曾存在過!


寫作過程中印象最深的一件事之一:我突然感覺自己目前的渺小,目前厲害的人太多了!但我要借目前雖渺小,但有的獨有優(yōu)勢變得比他們更厲害!而且要謙虛卻不自卑,卻不妄自菲薄,卻不懦弱,卻不膽小,卻不無動于衷等。自信膽大,卻不自傲,卻不自大等。




使用多線程實現(xiàn)1對1聊天

package dengLu;


import java.io.*;

import java.net.*;

import java.util.Scanner;

public class oneVoneFu {

public static void main(String[] args) throws Exception{


System.out.println("詩書畫唱SSHC,服務(wù)器端啟動,"

+ "\n請先輸入內(nèi)容,將會發(fā)給客戶端");

jieShouClass jieShouClass=new jieShouClass(33397);

// jieShouClass(int wofangduankou) ,

// 33397是接收客戶端發(fā)送給服務(wù)端時,服務(wù)端要用來接受

// 客戶端發(fā)來內(nèi)容的端口號,33397為服務(wù)端專門用來接受

// 客戶端發(fā)來內(nèi)容的端口號


faSongClass faSongClass=

new faSongClass(44497,11197,"localhost");

//44497為當前服務(wù)器發(fā)送給客戶端內(nèi)容時要用的本機端口號,

//11197為客戶本機端口號

new Thread(jieShouClass,"詩書畫唱").start();

new Thread(faSongClass).start();

}


}


package dengLu;


import java.util.*;

import java.io.*;

import java.net.*;

public class oneVoneKe {

public static void main(String[] args)throws Exception {


System.out.println("詩書畫唱,客戶端啟動");

jieShouClass jieShouClass=new jieShouClass(11197);


faSongClass faSongClass

=new faSongClass(22297,33397,"localhost");

// 這里的22297為端口號

new Thread(jieShouClass,"詩書畫唱SSHC").start();

new Thread(faSongClass).start();

}

}

//————

//將發(fā)送數(shù)據(jù)封為一個類,

//將接收數(shù)據(jù)封為一個類,

//在用戶不管是客戶端還是服務(wù)器端都開啟一個接收和發(fā)送的線程。

//————

class jieShouClass implements Runnable{

DatagramSocket DatagramSocket=null;

public jieShouClass(int benJiDuanKouHao){

try {

DatagramSocket=new DatagramSocket(benJiDuanKouHao);

} catch (SocketException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

}


@Override

public void run() {

//接收數(shù)據(jù)也是死循環(huán)

while(true){

// byteArrayRead:用來讀對方輸入的內(nèi)容的字節(jié)數(shù)組

byte[] byteArrayRead=new byte[1024*60];

DatagramPacket DatagramPacket=

new DatagramPacket

(byteArrayRead, byteArrayRead.length);

try {

DatagramSocket.receive(DatagramPacket);

//解析數(shù)據(jù):

// byteArrayPrint:用來打印出讀出的對方發(fā)送過來的

// 內(nèi)容的字節(jié)數(shù)組

byte[] byteArrayPrint=DatagramPacket.getData();

int lenPrint=DatagramPacket.getLength();

// jieShouDaoDeNeiRong:接收到對方發(fā)來的內(nèi)容

String jieShouDaoDeNeiRong

=new String(byteArrayPrint,0,lenPrint);

if(jieShouDaoDeNeiRong.trim().equals("不聊了")){

break;

}

System.out.println(Thread.currentThread().getName()

+":"+jieShouDaoDeNeiRong);

} catch (IOException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}//:接收數(shù)據(jù)

}DatagramSocket.close();

}


}


class faSongClass implements Runnable{

private int wofangduankou,duiFangDuanKouHao;

String duiFangIP=null;

Scanner s=new Scanner(System.in);


//發(fā)送的對象:

// benJiDuanKouHao:本機端口號

// duiFangDuanKouHao:對方端口號

// duiFangIP:對方IP

DatagramSocket DatagramSocket=null;

public faSongClass(int benJiDuanKouHao,

int duiFangDuanKouHao,String duiFangIP){

this.duiFangDuanKouHao=duiFangDuanKouHao;

this.duiFangIP=duiFangIP;

try {

DatagramSocket=new?

DatagramSocket(benJiDuanKouHao);

} catch (SocketException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

}

@Override

public void run() {

while(true){

//打包數(shù)據(jù):

// shuRuNeiRong;輸入內(nèi)容

System.out.println(

// Thread.currentThread().getName()+

"——————\n"

+ "下面是評論區(qū)(請輸入你的內(nèi)容)\n"

+ "——————");

//System.out.println(

// Thread.currentThread().getName()+":");

String shuRuNeiRong=s.next();

DatagramPacket DatagramPacket

=new DatagramPacket(shuRuNeiRong.getBytes(),

shuRuNeiRong.getBytes().length,

new InetSocketAddress(duiFangIP,duiFangDuanKouHao));

if(shuRuNeiRong.trim().equals("不聊了")){

break;

}

try {

DatagramSocket.send(DatagramPacket);

} catch (IOException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

}

DatagramSocket.close();

}









}





Java很詳細的個人解析版本:網(wǎng)絡(luò)編程,使用多線程實現(xiàn)1對1聊天,聊天室【詩書畫唱】的評論 (共 條)

分享到微博請遵守國家法律
喀喇沁旗| 慈溪市| 高雄市| 余干县| 屏南县| 法库县| 宜春市| SHOW| 勐海县| 富平县| 中牟县| 霍林郭勒市| 枣庄市| 宜兴市| 洛隆县| 蛟河市| 兴安县| 登封市| 光山县| 义乌市| 越西县| 鸡泽县| 黎川县| 水城县| 芷江| 嘉定区| 舞阳县| 丽江市| 沁水县| 东宁县| 元氏县| 郑州市| 临高县| 远安县| 沁源县| 永寿县| 桃园县| 英山县| 五台县| 临夏县| 南木林县|