1. 程式人生 > >【原】Java學習筆記034

【原】Java學習筆記034

 1 package cn.temptation;
 2 
 3 import java.io.IOException;
 4 import java.net.DatagramPacket;
 5 import java.net.DatagramSocket;
 6 import java.net.InetAddress;
 7 
 8 public class Sample02 {
 9     public static void main(String[] args) throws IOException {
10         /*
11          * 傳輸協議:人們為了通訊而制定的規則
12 * 常用協議:UDP、TCP 13 * 14 * 套接字Socket的機制: 15 * 1、進行通訊的雙方都有Socket 16 * 2、網路通訊實際是Socket之間的通訊 17 * 3、資料在Socket之間通過IO流進行傳輸 18 * 19 * Java語言中對UDP協議使用Socket進行了封裝,提供了DatagramPacket類 和 DatagramSocket類 20 * 21 * 類 DatagramPacket:資料報包用來實現無連線包投遞服務。每條報文僅根據該包中包含的資訊從一臺機器路由到另一臺機器。
22 * 從一臺機器傳送到另一臺機器的多個包可能選擇不同的路由,也可能按不同的順序到達。不對包投遞做出保證。 23 * 24 * DatagramPacket類的常用建構函式: 25 * 1、DatagramPacket(byte[] buf, int length):構造 DatagramPacket,用來接收長度為 length 的資料包。 26 * 2、DatagramPacket(byte[] buf, int length, InetAddress address, int port):構造資料報包,用來將長度為 length 的包傳送到指定主機上的指定埠號。
27 * 28 * 類 DatagramSocket:此類表示用來發送和接收資料報包的套接字。 29 * 資料報套接字是包投遞服務的傳送或接收點。每個在資料報套接字上傳送或接收的包都是單獨編址和路由的。 30 * 從一臺機器傳送到另一臺機器的多個包可能選擇不同的路由,也可能按不同的順序到達。 31 * 在 DatagramSocket上總是啟用 UDP 廣播發送。為了接收廣播包,應該將DatagramSocket繫結到萬用字元地址。 32 * 在某些實現中,將 DatagramSocket繫結到一個更加具體的地址時廣播包也可以被接收。 33 * 34 * DatagramSocket類的常用成員方法: 35 * 1、void send(DatagramPacket p):從此套接字傳送資料報包。 36 * 2、void close():關閉此資料報套接字。 37 * 38 * UDP協議的傳送資料: 39 * 1、建立傳送端Socket物件 40 * 2、建立資料,把資料進行打包 41 * 3、呼叫Socket物件的傳送方法傳送資料包 42 * 4、釋放資源 43 */ 44 45 // 1、建立傳送端Socket物件 46 DatagramSocket ds = new DatagramSocket(); 47 48 // 2、建立資料,把資料進行打包 49 // A:建立資料 50 byte[] arr = ("Hello, UDP").getBytes(); 51 // B:獲取地址物件 52 InetAddress address = InetAddress.getByName("temptation"); 53 // C:打包資料 54 DatagramPacket dp = new DatagramPacket(arr, arr.length, address, 1234); 55 56 // 3、呼叫Socket物件的傳送方法傳送資料包 57 ds.send(dp); 58 59 // 4、釋放資源 60 ds.close(); 61 } 62 }

相關推薦

Java學習筆記034 - 網絡

端口號 bre throws clas 編程 綁定 容器 名稱 套接字 1 package cn.temptation; 2 3 import java.net.InetAddress; 4 5 public class Sample01 {

Java學習筆記034

1 package cn.temptation; 2 3 import java.io.IOException; 4 import java.net.DatagramPacket; 5 import java.net.DatagramSocket; 6 import java.ne

Java學習筆記033

1 package cn.temptation; 2 3 import java.io.BufferedInputStream; 4 import java.io.BufferedOutputStream; 5 import java.io.FileInputStream;

Java學習筆記032

1 package cn.temptation; 2 3 public class Sample03 { 4 public static void main(String[] args) { 5 /* 6 * Thread類的常用成員方法:

javascript學習筆記之this用法

javascript中的this學習起來相對複雜,最近花了點時間研究,總結起來大概這隻有5種情況,相信只要熟悉這5種用法,基本是可以解決所有的this問題,文字不介紹this設計原理,只介紹用法,閱讀本文,你需要了解javascript執行上下文環境,博主寫這種文章的目的,主要還是給自己做下筆記,後續也會輸出

專欄 - Java學習筆記經典例題

Java學習筆記經典例題 在校期間,記錄在一家培訓機構學習Android期間的JAVA筆記經典例題部落格專欄。歡迎大家互相交流學習。

JavaJava學習筆記總結(一)

2013-07-15 1. JDK、JRE和JVM分別是什麼,區別是什麼? 答: ①、JDK 是整個Java的核心,包括了Java執行環境、Java工具和Java基礎類庫。 ②、JRE(Java Runtime Environment,Java執行環境),執行JAVA程式所

Nodejs學習筆記(一)--- 簡介及安裝Node.js開發環境

ack 目錄 javascrip 難度 時間 網站開發 clas jetbrains 常用 目錄 學習資料 簡介 安裝Node.js npm簡介 開發工具 Sublime Node.js開發環境配置 擴展:安裝多版本管理器 學習資料   1.深入淺出Node.j

pythonpython學習筆記

pythonList:列表1)列表表達式:有時可以很方便的代替函數實現一些功能1.1)字符串居中(長度為9個字符) >>> a = ["123","456","abc","Abc","AAA"] >>> [k.center(9) for k in a] [‘ 123

Python3學習筆記(urllib模塊的使用)

nal 方法 utf 網址 pin des IE tps erer 原文地址:https://www.cnblogs.com/Lands-ljk/p/5447127.html 1.基本方法 urllib.request.urlopen(url, data=None, [ti

MongoDB學習筆記(查詢)

順序 god ... ive HR 操作 方式 mar obj 原文地址 MongoDB學習筆記(查詢) 基本查詢: 構造查詢數據。 > db.test.findOne() { "_id" : ObjectId("4fd58ecbb9ac507e96276f1a")

轉載JAVA學習路線二

get rocket 原理 aop 二次 三次握手 active AD cpu JAVA學習路線二------------高階面試 作者:Java高級進階鏈接:https://zhuanlan.zhihu.com/p/35301291來源:知乎著作權歸作者所有。商業轉載請聯

Verilog學習筆記簡單功能實現(八)...............異步FIFO

另一個 gif 多個 可靠 基本原理 drs bar next 不同 基本原理: 1.讀寫指針的工作原理   寫指針:總是指向下一個將要被寫入的單元,復位時,指向第1個單元(編號為0)。   讀指針:總是指向當前要被讀出的數據,復位時,指向第1個單元(編號為0)

Java學習---內存溢出的排查經歷

heap cspro 大量 每次 並且 老年代 操作 常見 lvm 【原文】https://www.toutiao.com/i6595365358301872643/ 前言 OutOfMemoryError 問題相信很多朋友都遇到過,相對於常見的業務異常(數組越界、空指針等

Java學習---線程間的通信

更強 裏的 兩個 sub 優先 網絡 sync 獲取 操作系統 【原文】https://www.toutiao.com/i6572378564534993415/ 兩個線程間的通信 這是我們之前的線程。 執行效果:誰搶到資源,誰運行~ 實現線程交替執行: 這裏主要用到

Java學習---Java的鎖和Mysql的鎖機制

tps www. 鎖機制 www http ava mysql href 和數 【原文】https://www.toutiao.com/i6593861446428262916/ Java和數據庫的鎖機制 https://www.toutiao.com/i659386144

Java學習---HashMap和HashSet的內部工作機制

link 實踐 離散 val 數據結構 結構 通過 如何 factor 【原文】https://www.toutiao.com/i6593863882484220430/ HashMap和HashSet的內部工作機制 HashMap 和 HashSet 內部是如何工作的?散

Java學習---算法那些事

tco 那些事 www com 遊學 leetcode 更多 ava 今日頭條 【更多參考】 LeetCode算法 每日一題 1: Two Sum ----> 更多參考【今日頭條--松鼠遊學】 史上最全的五大算法總結【轉】Java學習---算法那些事

Java學習---Java核心數據結構(List,Map,Set)使用技巧與優化

系統資源 .get 兩種 這樣的 his java學習 com 都是 索引 【原文】https://www.toutiao.com/i6594587397101453827/ Java核心數據結構(List,Map,Set)使用技巧與優化 JDK提供了一組主要的數據結構實現

Java學習---快速掌握RPC原理及實現

消費者 阿裏 局限 kryo nes 很多 cal 網絡 href 【原文】https://www.toutiao.com/i6592365493435236872/ ?RPC概述 RPC(Remote Procedure Call)即遠程過程調用,也就是說兩臺服務器A,