java编写即时聊天程序
怎样用java编写一个即时聊天程序呢?下面yjbys小编就为大家分享最新的`java即时聊天程序编写方法,一起来看看吧!
import .*;
import t.*;
import .*;
/**
* Sample application using Frame.
*
* @author
* @version 1.00 07/06/13
*/
public class Chatp2pFrame extends Frame {
List dataList=new List(26);
TextField Tfip=new TextField(18);
TextField Tfdata=new TextField(19);
Label Lip=new Label("输入对方的IP地址:");
Label Ldata=new Label("输入聊天的内容:");
DatagramSocket socket=null;
/**
* The constructor.
*/
public Chatp2pFrame() {
try
{
socket=new DatagramSocket(5000);
}
catch(Exception e)
{
tStackTrace();
}
ize(150,15);
ize(150,15);
ocusable(true);
oreground();
oreground();
oreground(k);
(dataList,"North");
Panel p1=new Panel();
Panel p2=new Panel();
ayout(new BorderLayout());
ayout(new BorderLayout());
(p1,"Center");
(p2,"South");
(Lip,"West");
(Ldata,"East");
(Tfip,"West");
(Tfdata,"East");
new Thread(new Runnable()
{
public void run()
{
byte[] buf=new byte[1024];
DatagramPacket packet=new DatagramPacket(buf,1024);
while(true)
{
try
{
ive(packet);
(new String(buf,0,ength())+" FROM "+ddress()ostAddress()+":"+ort(),0);
}
catch(Exception e)
{
if(!osed())
{
tStackTrace();
}
}
}
}
}
)t();
ctionListener(new ActionListener()
{
public void actionPerformed(ActionEvent e)
{
try
{
byte[] buf=new byte[1024];
buf=ext()ytes();
DatagramPacket packet=new DatagramPacket(buf,th,
yName(ext()),5000);
(packet);
(new String(buf,0,ength())+" TO "+ddress()ostAddress()+":"+ort(),0);
}
catch(Exception x)
{
tStackTrace();
}
ext("");
}
}
);
MenuBar menuBar = new MenuBar();
Menu menuFile = new Menu();
MenuItem menuFileExit = new MenuItem();
abel("文件");
abel("退出");
// Add action the menu button
ctionListener
(
new ActionListener() {
public void actionPerformed(ActionEvent e) {
owClosed();
}
}
);
(menuFileExit);
(menuFile);
setTitle("我的聊天程序");
setMenuBar(menuBar);
setSize(new Dimension(310, 500));
esizable(false);
// Add Window listener.
indowListener
(
new WindowAdapter() {
public void windowClosing(WindowEvent e) {
owClosed();
}
}
);
}
/**
* Shutdown procedure when run as an application.
*/
protected void windowClosed() {
// TODO: Check if it is safe to close the application
// Exit application.
e();
(0);
}
public static void main(String[] args) {
// Create application frame.
Chatp2pFrame frame = new Chatp2pFrame();
// Show frame
isible(true);
}
}
-
最全的java随机数生成算法
java随机数生成算法是怎么样的?下面yjbys小编为大家分享最新最全的java随机数生成算法,希望对大家学习有所帮助!一个最全的随机数的生成算法,最代码的找回密码的随机数就是用的这个方法:1Stringpassword=rateString(10);源码如下:001package;002003importom;004005...
-
2017年有价值的java面试题
计算机网络就是由通信线路互相连接的许多自主工作的计算机构成的集合体。下面是小编整理的关于java面试题及试题,欢迎大家参考!第一,谈谈final,finally,finalize的区别。final用于声明属性,方法和类,分别表示属性不可变,方法不可覆盖,类不可继承。finally是异常处理...
-
java非对称加密的源代码(rsa)
java非对称加密的源代码rsa有哪些基本知识,下面yjbys小编为大家一一讲解!鉴于rsa加密的重要性和相关源代码的匮乏,经过整理特此贴出。需要下载。importer;importrity.*;importublicKeySpec;importrivateKeySpec;importlidKeySpecException;importrivateKey;impor...
-
Java获取当前的系统时间的方法
在java中,我们可以利用程序获取当前的'系统时间,那么你知道该怎么获取吗?下面跟yjbys小编一起来学习一下吧!一、获取当前系统时间和日期并格式化输出:import;importleDateFormat;publicclassNowString{publicstaticvoidmain(String[]args){SimpleDateFormatdf=ne...