im即时通讯实现代码java

时间:2020-12-06

桌面共享源代码

导入java。awt。 *;im即时通讯系统java。

进口*;

导入javax。swing。 *;

导入java。net。 *;android im即时通讯。

导入java。io。 *;im即时通讯源码。

公共类客户端演示01{Java即时通讯。

公共静态空主(String[]args){

新=JFrame(“AA“);

JPanelp1=新的JPanel();Java开源即时通讯。

JPanelp2=新的JPanel();Java 即时通讯框架。

JText地区=新的JText地区(15,30);Java 即时通讯 来源。

设置可编辑(false);/文本字段只读

JScroll Pane sp=新的JScroll Pane(ta);/滚动窗格

JText Field TF=新的JText Field(20);Java开发即时通讯。

巴顿b=新的巴顿(“发送“);

p1、add(sp);im即时通讯工具。

第2段(TF);阿里云即时通讯im。

p2、add(b);

f。add(p1,“Center“);

f。add(p2,“South“);

f。铅球(300300360300);

可见(真实);im即时通讯原理。

f。设置可调整(假);

f。(JFrame。 exit_on_close);im即时通讯 开源。

套接字=空;im即时通讯ecshop。

之二=零;

玻色=空;

尝试{

套接字=新套接字(“,5000);im即时通讯 技术架构。

双=新(插座。 ());

新=(套接字。 ());。我的Thread01mt=新的My Thread01(bis,ta);

启动();

}捕获(例外e){

e。();b。 (新的(tf,ta,bos);类实现{im即时通讯服务端。

JText Field TF;

JText地区;

博斯;

公共(JText字段TF,JText区域ta,bos){im 即时通讯云。

本。TF=TF;

这。ta=ta;

bos=bos;public void(Action Evente){im即时通讯接口。

字符串消息=tf。getText();

如果(! message。equals(“){

设置文本(“);/清除文本框android即时通讯。

添加(“AA:”消息“\n”);/添加到文本字段和换行熊掌号im即时通讯。

尝试{

bos。write(message。get Bytes());国内即时通讯软件排名。

冲洗();即时通讯软件排名。

}捕获(例外){免费即时通讯软件。

“交付失败”);}类My Thread01扩展Thread{)

之二;

JText地区;

公共我的线程01(之二,JText区域ta){

bis=bis;全球三大即时通讯软件。

这。ta=ta;公共无效运行(){pc端 im软件。

尝试{

而(真){

字节[]b=新字节[100];

长度=二读(b);

字符串消息=新字符串(b,0,长度);。添加(“BB:”消息“\n”);}捕获(异常e){

();}导入java。awt。 *;

进口*;

im即时通讯实现代码java:求一个java写的即时通信小软件

导入javax。swing。 *;

导入java。net。 *;

导入java。io。 *;

公共类服务器Demo01{

公共静态空主(String[]args){

新=JFrame(“BB“);

JPanelp1=新的JPanel();

JPanelp2=新的JPanel();

JText Area ta=新JText Area(12,30);/text字段,第一个参数是行数,第二个参数是列数

设置可编辑(false);/文本字段只读

JScroll Pane sp=新的JScroll Pane(ta);/滚动窗格

JText Field TF=新的JText Field(20);

巴顿b=新的巴顿(“发送“);

p1、add(sp);

第2段(TF);

p2、add(b);

f。add(p1,“Center“);

f。add(p2,“South“);

f。铅球(300300360300);

可见(真实);

f。设置可调整(假);

f。(JFrame。 exit_on_close);

服务器套接字服务器=空;

套接字=空;。之二=零;

玻色=空;

尝试{

服务器=新服务器套接字(5000);

//ta。append(“等待AA连接”);

套接字=服务器。接受();

//。append(“AA connected\n”);

双=新(插座。 ());

新=(套接字。 ());

我的线程1mt=新的我的线程1(bis,ta);

启动();

}捕获(例外e){

e。();b。 (新的(tf,ta,bos);类实现{

JText Field TF;

JText地区;

博斯;

公共(JText字段TF,JText区域ta,bos){

本。TF=TF;

这。ta=ta;

bos=bos;public void(Action Evente){

字符串消息=tf。getText();/获取文本框中的内容

如果(! message。equals(“){

设置文本(“);/清除文本框

添加(“BB:”消息“\n”);/添加到文本字段和换行

尝试{

bos。write(message。get Bytes());

冲洗();

}捕获(例外){

“发送失败了! }类My Thread1扩展Thread{

之二;。JText地区;

公共我的线程1(之二,JText区域ta){

bis=bis;

这。ta=ta;公共无效运行(){

尝试{

而(真){

字节[]b=新字节[100];

长度=二读(b);

字符串消息=新字符串(b,0,长度);

尾端(“AA:”消息“\n”);}捕获(异常e){

e。();}。