日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁技術文章
文章詳情頁

java UDP實現一個聊天工具的示例代碼

瀏覽:124日期:2022-08-18 10:42:13

題目:假設Tom和Jerry利用Java UDP進行聊天,請為他們編寫程序。具體如下:(1)、Tom和Jerry聊天的雙方都應該具有發送端和接收端;(2)、利用DatagramSocket與DatagramPacket;(3)、實現 java.lang.Runnable類,重寫 run()方法。

java UDP實現一個聊天工具的示例代碼

學過計網的都知道,利用三元組(ip地址,協議,端口)就可以標識網絡的進程了。而進行通信我們直接運用socket就可以了,首先需要知道是socket是什么,這部分可以參考這個大佬寫的博客。https://www.jb51.net/article/121601.htm實現一個客戶端,那么需要Tom和Jerry都可以實現接收和發送功能,分別用兩個線程啟動。

接收線程Receive_Thread.java

package Chat_UDP;import java.io.IOException;import java.util.Date;import java.net.DatagramPacket;import java.net.DatagramSocket;import java.text.SimpleDateFormat;public class Receive_Thread extends Thread { private static final int MAX_RECEIVE_BUFFER = 1024; private DatagramSocket server; private DatagramPacket packet; byte[] buffer = new byte[MAX_RECEIVE_BUFFER]; public Receive_Thread(DatagramSocket server) { this.server = server; packet = new DatagramPacket(buffer, buffer.length); } @Override public void run() { try { while(true) { //接收數據包 server.receive(packet); String s = new String(packet.getData(),packet.getOffset(),packet.getLength(),'UTF-8'); Date day=new Date(); SimpleDateFormat df = new SimpleDateFormat('yyyy-MM-dd HH:mm:ss'); if(packet.getPort() == 10001) System.out.println('Tom'+packet.getAddress()+' 說:'+s+'t'+df.format(day)); else{ System.out.println('Jerry'+packet.getAddress()+' 說 :'+s+'t'+df.format(day)); } packet.setLength(buffer.length); } } catch(IOException e) { System.out.println('IOException'); } }}

發送線程Send_Thread.java

package Chat_UDP;import java.io.IOException;import java.net.DatagramPacket;import java.net.DatagramSocket;import java.net.InetAddress;import java.net.InetSocketAddress;import java.util.Scanner;public class Send_Thread extends Thread{ //發送的socket端 private DatagramSocket sender = null; //待發送的目標地址 private InetSocketAddress address = null; //從鍵盤輸入 Scanner scan = new Scanner(System.in); public Send_Thread(DatagramSocket sender,InetSocketAddress address) { this.sender = sender; this.address = address; } @Override public void run() { // TODO Auto-generated method stub try { while(true) { //輸入待發送的內容 String input = scan.nextLine(); if(input.equals('exit')) break; byte[] data = null; data = input.getBytes('UTF-8'); //創建UDP數據報 DatagramPacket pack = new DatagramPacket(data, data.length,address); sender.send(pack); } System.out.println('Exit!'); }catch(IOException e) { System.out.println('IOException'); } }}

聊天服務器Chat_Server.java

package Chat_UDP;//楊麗冰 201831064402import java.net.DatagramSocket;import java.net.InetSocketAddress;public class Chat_Server { private static final int DEST_PORT = 8888; private static final int SEND_PORT = 10001; private static final int RECE_PORT = 9000; private static final String IP = '127.0.0.1'; public static void main(String[] args) { try{ Send_Thread send_thread = null; Receive_Thread rece_thread = null; InetSocketAddress address = null; //創建待接受數據包的目的機的端口號和IP地址 address = new InetSocketAddress(IP, DEST_PORT); //創建發送的Socket端 DatagramSocket sendsocket = new DatagramSocket(SEND_PORT); //創建接受的Socket端 DatagramSocket recesocket = new DatagramSocket(RECE_PORT); //發送線程建立 send_thread = new Send_Thread(sendsocket, address); //接受線程的建立 rece_thread = new Receive_Thread(recesocket); send_thread.start(); rece_thread.start(); }catch(Exception e) { System.out.println('Exception!'); } }}

聊天客戶端 Chat_Client.java

package Chat_UDP;//楊麗冰 201831064402import java.net.DatagramSocket;import java.net.InetSocketAddress;public class Chat_Client {//聲明端口號 private static final int DEST_PORT = 9000; private static final int SEND_PORT = 10000; private static final int RECE_PORT = 8888; private static final String IP = '127.0.0.1'; public static void main(String[] args) { try{ Send_Thread send_thread = null; Receive_Thread rece_thread = null; InetSocketAddress address = null; //創建待接受數據包的目的機的端口號和IP地址 address = new InetSocketAddress(IP, DEST_PORT); //創建發送的Socket端 DatagramSocket sendsocket = new DatagramSocket(SEND_PORT); //創建接受的Socket端 DatagramSocket recesocket = new DatagramSocket(RECE_PORT); //發送線程建立 send_thread = new Send_Thread(sendsocket, address); //接受線程的建立 rece_thread = new Receive_Thread(recesocket); send_thread.start(); rece_thread.start(); }catch(Exception e) { System.out.println('Exception!'); } }}

需要注意的時候運行的時候需要同時運行聊天服務器和客戶端,才能夠正常運行。最終效果如下:

java UDP實現一個聊天工具的示例代碼java UDP實現一個聊天工具的示例代碼

到此這篇關于java UDP實現一個聊天工具的文章就介紹到這了,更多相關java UDP聊天工具內容請搜索好吧啦網以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持好吧啦網!

標簽: Java
相關文章:
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
中文在线一区| 国产农村妇女精品一区二区| 久久不卡国产精品一区二区| 国产精品**亚洲精品| 国产66精品| 好吊一区二区三区| 欧美一区91| 国产黄大片在线观看| 国产高清久久| 婷婷精品久久久久久久久久不卡| 国产精品一区二区三区av| 国产美女高潮在线| 久久亚洲风情| 久久国产精品免费精品3p| 精品视频一区二区三区四区五区 | 午夜av一区| 日韩国产欧美在线视频| 成人午夜在线| 亚洲丝袜美腿一区| 国产黄色精品| 中文亚洲欧美| 国产成人免费视频网站视频社区| 午夜精品一区二区三区国产| 欧美日韩精品一区二区三区在线观看| 一本大道色婷婷在线| 日韩精品1区2区3区| 日韩88av| 日本在线一区二区三区| 日韩一区亚洲二区| 亚洲精品影视| 日韩专区精品| 国产日韩视频| aa亚洲婷婷| 精品亚洲a∨一区二区三区18| 9色精品在线| 国产一区二区三区四区| 一区二区三区四区日韩| 高潮一区二区| 国产情侣久久| 视频一区视频二区在线观看| 国产videos久久| 美国三级日本三级久久99| 成人午夜毛片| 欧美一区久久| 久久亚洲精品伦理| 日韩欧美少妇| 久久精品国产亚洲一区二区三区| 蜜臀精品一区二区三区在线观看| 精品三级久久| 精品视频97| 国产探花一区二区| 蜜臀a∨国产成人精品| 99久久亚洲精品| 电影91久久久| 国产精品日本一区二区不卡视频| 中文字幕成人| 亚洲国产不卡| 亚洲91视频| 精品视频网站| 国产探花一区| 最近国产精品视频| 成人羞羞在线观看网站| 国产伦精品一区二区三区在线播放 | 欧美日韩精品一本二本三本| 美女毛片一区二区三区四区最新中文字幕亚洲| 蜜桃伊人久久| 99热精品在线| 久久三级福利| 国产一区二区三区91| 青草国产精品久久久久久| 欧美专区在线| 精品欧美激情在线观看| 亚洲天堂av影院| 日韩av在线播放网址| 精品网站999| 麻豆视频一区二区| 国产麻豆一区二区三区| 91九色综合| 日本欧美韩国一区三区| 亚洲三级观看| 亚洲精品亚洲人成在线观看| 三级亚洲高清视频| 亚洲男女av一区二区| 亚洲不卡av不卡一区二区| 亚洲永久av| 热三久草你在线| 日本美女一区| 日韩高清中文字幕一区二区| 天堂8中文在线最新版在线| 国产 日韩 欧美 综合 一区| 精品视频自拍| 黄色网一区二区| 激情综合五月| 国产成人a视频高清在线观看| 狂野欧美性猛交xxxx| 久久一区欧美| 精品成av人一区二区三区| 精品黄色一级片| 欧美激情日韩| 久久99久久久精品欧美| 国产精品高清一区二区| 免费在线日韩av| 麻豆成人综合网| 国产精品1区| 精品久久久久中文字幕小说| 97人人精品| 久久精品观看| 欧美在线资源| 亚洲日产av中文字幕| 欧美亚洲三级| 精品视频网站| 日韩一区二区三区在线免费观看| 久久婷婷av| 一区三区视频| 男女性色大片免费观看一区二区| 丝袜美腿亚洲一区二区图片| 亚洲尤物av| 国产乱人伦精品一区| 色爱综合网欧美| 99精品视频在线| 美国三级日本三级久久99 | 国产美女精品视频免费播放软件| 久久伊人亚洲| 国产成年精品| 亚洲香蕉网站| | 婷婷综合激情| 在线看片日韩| 青青伊人久久| 成人黄色av| 亚洲激情五月| 日韩超碰人人爽人人做人人添| 精品国产欧美| 婷婷久久一区| 日韩高清一区在线| 精品日产乱码久久久久久仙踪林| 91亚洲一区| 丝袜美腿成人在线| 国产精品一区二区三区av麻| 精品国模一区二区三区| 综合激情网站| 久久精品国产免费| 影视先锋久久| 日韩视频一二区| 精品亚洲二区| 国产精品嫩草99av在线| 国产私拍福利精品视频二区| 日本少妇一区| 亚洲精品伊人| 色偷偷色偷偷色偷偷在线视频| 视频一区国产视频| 精品国产午夜肉伦伦影院| 亚洲婷婷免费| 国产精品videossex| 欧美1区2区3区| 国产日韩一区二区三区在线| 亚洲午夜视频| 国产精品香蕉| 激情婷婷综合| 免费精品一区| 国产精品外国| 福利一区二区免费视频| 99视频精品免费观看| 久久中文精品| 免费日本视频一区| 国产96在线亚洲| 婷婷综合国产| 国产美女高潮在线| 日韩精品国产精品| 久久精品国产www456c0m| 欧美日韩xxxx| 午夜欧美在线| 精品三区视频| 亚洲精品第一| 久久精品国内一区二区三区水蜜桃| 日本在线成人| 欧美午夜不卡| bbw在线视频| 国产亚洲欧美日韩精品一区二区三区| 久久影视一区| 精品国产欧美日韩| 日韩和欧美一区二区三区| 亚洲综合电影| 国产精品99久久免费| 免费精品视频最新在线| av高清一区| 老司机精品视频在线播放| 日韩视频不卡| av资源中文在线| 国产精品网站在线看| 中文视频一区| 欧美.日韩.国产.一区.二区| 国产成人1区| 国产精品1luya在线播放| 亚洲日产av中文字幕| 亚洲免费播放| 久久高清精品| 精品九九在线| 国产精品一页| 青青国产精品|