新聞中心
SocketImpl

創(chuàng)新互聯(lián)公司主營博湖網(wǎng)站建設(shè)的網(wǎng)絡(luò)公司,主營網(wǎng)站建設(shè)方案,成都APP應(yīng)用開發(fā),博湖h5小程序制作搭建,博湖網(wǎng)站營銷推廣歡迎博湖等地區(qū)企業(yè)咨詢
java.lang.Object
|---java.net.SocketImpl
public abstract class SocketImpl
extends Object
implements SocketOptions抽象類 SocketImpl 是所有實(shí)際實(shí)現(xiàn)套接字的類的公共超類。 它用于創(chuàng)建客戶端和服務(wù)器套接字。
“普通”套接字完全按照描述實(shí)現(xiàn)這些方法,而不試圖通過防火墻或代理。
字段摘要
| 修飾符和類型 | 字段 | 描述 |
|---|---|---|
| protected InetAddress | address | 此套接字的遠(yuǎn)程端的 IP 地址。 |
| protected FileDescriptor | fd | 此套接字的文件描述符對象。 |
| protected int | localport | 此套接字連接到的本地端口號。 |
| protected int | port | 此套接字連接到的遠(yuǎn)程主機(jī)上的端口號。 |
| 從接口 java.net.SocketOptions 繼承的字段 |
|---|
| IP_MULTICAST_IF, IP_MULTICAST_IF2, IP_MULTICAST_LOOP, IP_TOS, SO_BINDADDR, SO_BROADCAST, SO_KEEPALIVE, SO_LINGER, SO_OOBINLINE, SO_RCVBUF, SO_REUSEADDR, SO_SNDBUF, SO_TIMEOUT, TCP_NODELAY |
構(gòu)造函數(shù)摘要
| 構(gòu)造函數(shù) | 描述 |
|---|---|
| SocketImpl() |
方法總結(jié)
| 修飾符和類型 | 方法 | 描述 |
|---|---|---|
| protected abstract void | accept(SocketImpl s) | 接受連接。 |
| protected abstract int | available() | 返回可以不阻塞地從此套接字讀取的字節(jié)數(shù)。 |
| protected abstract void | bind(InetAddress host, int port) | 將此套接字綁定到指定的本地 IP 地址和端口號。 |
| protected abstract void | close() | 關(guān)閉此套接字。 |
| protected abstract void | connect(String host, int port) | 將此套接字連接到指定主機(jī)上的指定端口。 |
| protected abstract void | connect(InetAddress address, int port) | 將此套接字連接到指定主機(jī)上的指定端口號。 |
| protected abstract void | connect(SocketAddress address, int timeout) | 將此套接字連接到指定主機(jī)上的指定端口號。 |
| protected abstract void | create(boolean stream) | 創(chuàng)建流或數(shù)據(jù)報(bào)套接字。 |
| protected FileDescriptor | getFileDescriptor() | 返回此套接字的 fd 字段的值。 |
| protected InetAddress | getInetAddress() | 返回此套接字的地址字段的值。 |
| protected abstract InputStream | getInputStream() | 返回此套接字的輸入流。 |
| protected int | getLocalPort() | 返回此套接字的 localport 字段的值。 |
| protected abstract OutputStream | getOutputStream() | 返回此套接字的輸出流。 |
| protected int | getPort() | 返回此套接字的端口字段的值。 |
| protected abstract void | listen(int backlog) | 將傳入連接指示(連接請求)的最大隊(duì)列長度設(shè)置為 count 參數(shù)。 |
| protected abstract void | sendUrgentData(int data) | 在套接字上發(fā)送一個(gè)字節(jié)的緊急數(shù)據(jù)。 |
| protected void | setPerformancePreferences(int connectionTime, int latency, int bandwidth) | 設(shè)置此套接字的性能首選項(xiàng)。 |
| protected void | shutdownInput() | 將此套接字的輸入流放在“流的末尾”。 |
| protected void | shutdownOutput() | 禁用此套接字的輸出流。 |
| protected boolean | supportsUrgentData() | 返回此 SocketImpl 是否支持發(fā)送緊急數(shù)據(jù)。 |
| String | toString() | 將此套接字的地址和端口作為字符串返回。 |
| 從類 java.lang.Object 繼承的方法 |
|---|
| clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
| 從接口 java.net.SocketOptions 繼承的方法 |
|---|
| getOption, setOption |
字段詳細(xì)信息
address
protected InetAddress address
此套接字的遠(yuǎn)程端的 IP 地址。
fd
protected FileDescriptor fd
此套接字的文件描述符對象。
localport
protected int localport
此套接字連接到的本地端口號。
port
protected int port
此套接字連接到的遠(yuǎn)程主機(jī)上的端口號。
構(gòu)造函數(shù)詳細(xì)信息
SocketImpl
public SocketImpl()
方法詳情
create
protected abstract void create(boolean stream) throws IOException
創(chuàng)建流或數(shù)據(jù)報(bào)套接字。
參數(shù):
| 參數(shù)名稱 | 參數(shù)描述 |
|---|---|
| stream | 如果為true,則創(chuàng)建一個(gè)流套接字; 否則,創(chuàng)建一個(gè)數(shù)據(jù)報(bào)套接字。 |
Throws:
| Throw名稱 | Throw描述 |
|---|---|
| IOException | 如果在創(chuàng)建套接字時(shí)發(fā)生 I/O 錯誤。 |
connect
protected abstract void connect(String host, int port) throws IOException
將此套接字連接到指定主機(jī)上的指定端口。
參數(shù):
| 參數(shù)名稱 | 參數(shù)描述 |
|---|---|
| host | 遠(yuǎn)程主機(jī)的名稱。 |
| port | 端口號。 |
Throws:
| Throw名稱 | Throw描述 |
|---|---|
| IOException | 如果連接到遠(yuǎn)程主機(jī)時(shí)發(fā)生 I/O 錯誤。 |
connect
protected abstract void connect(InetAddress address, int port) throws IOException
將此套接字連接到指定主機(jī)上的指定端口號。
參數(shù):
| 參數(shù)名稱 | 參數(shù)描述 |
|---|---|
| address | 遠(yuǎn)程主機(jī)的 IP 地址。 |
| port | 端口號。 |
Throws:
| Throw名稱 | Throw描述 |
|---|---|
| IOException | 如果嘗試連接時(shí)發(fā)生 I/O 錯誤。 |
connect
protected abstract void connect(SocketAddress address, int timeout) throws IOException
將此套接字連接到指定主機(jī)上的指定端口號。 超時(shí)為零被解釋為無限超時(shí)。 然后連接將阻塞,直到建立或發(fā)生錯誤。
參數(shù):
| 參數(shù)名稱 | 參數(shù)描述 |
|---|---|
| address | 遠(yuǎn)程主機(jī)的 Socket 地址。 |
| timeout | 超時(shí)值,以毫秒為單位,或者為零表示沒有超時(shí)。 |
Throws:
| Throw名稱 | Throw描述 |
|---|---|
| IOException | 如果嘗試連接時(shí)發(fā)生 I/O 錯誤。 |
bind
protected abstract void bind(InetAddress host, int port) throws IOException
將此套接字綁定到指定的本地 IP 地址和端口號。
參數(shù):
| 參數(shù)名稱 | 參數(shù)描述 |
|---|---|
| host | 屬于本地接口的 IP 地址。 |
| port | 端口號。 |
Throws:
| Throw名稱 | Throw描述 |
|---|---|
| IOException | 如果綁定此套接字時(shí)發(fā)生 I/O 錯誤。 |
listen
protected abstract void listen(int backlog) throws IOException
將傳入連接指示(連接請求)的最大隊(duì)列長度設(shè)置為 count 參數(shù)。 如果隊(duì)列已滿時(shí)連接指示到達(dá),則拒絕連接。
參數(shù):
| 參數(shù)名稱 | 參數(shù)描述 |
|---|---|
| backlog | 隊(duì)列的最大長度。 |
Throws:
| Throw名稱 | Throw描述 |
|---|---|
| IOException | 如果在創(chuàng)建隊(duì)列時(shí)發(fā)生 I/O 錯誤。 |
accept
protected abstract void accept(SocketImpl s) throws IOException
接受連接。
參數(shù):
| 參數(shù)名稱 | 參數(shù)描述 |
|---|---|
| s | 接受的連接。 |
Throws:
| Throw名稱 | Throw描述 |
|---|---|
| IOException | 如果在接受連接時(shí)發(fā)生 I/O 錯誤。 |
getInputStream
protected abstract InputStream getInputStream() throws IOException
返回此套接字的輸入流。
返回:
用于從此套接字讀取的流。
Throws:
| Throw名稱 | Throw描述 |
|---|---|
| IOException | 如果在創(chuàng)建輸入流時(shí)發(fā)生 I/O 錯誤。 |
getOutputStream
protected abstract OutputStream getOutputStream() throws IOException
返回此套接字的輸出流。
返回:
用于寫入此套接字的輸出流。
Throws:
| Throw名稱 | Throw描述 |
|---|---|
| IOException | 如果在創(chuàng)建輸出流時(shí)發(fā)生 I/O 錯誤。 |
available
protected abstract int available() throws IOException
返回可以不阻塞地從此套接字讀取的字節(jié)數(shù)。
返回:
可以不阻塞地從此套接字讀取的字節(jié)數(shù)。
Throws:
| Throw名稱 | Throw描述 |
|---|---|
| IOException | 如果在確定可用字節(jié)數(shù)時(shí)發(fā)生 I/O 錯誤。 |
close
protected abstract void close() throws IOException
關(guān)閉此套接字。
Throws:
| Throw名稱 | Throw描述 |
|---|---|
| IOException | 如果關(guān)閉此套接字時(shí)發(fā)生 I/O 錯誤。 |
shutdownInput
protected void shutdownInput() throws IOException
將此套接字的輸入流放在“流的末尾”。 發(fā)送到此套接字的任何數(shù)據(jù)都會得到確認(rèn),然后被靜默丟棄。 如果在套接字上調(diào)用此方法后從套接字輸入流中讀取,則流的可用方法將返回 0,其讀取方法將返回 -1(流結(jié)束)。
Throws:
| Throw名稱 | Throw描述 |
|---|---|
| IOException | 如果關(guān)閉此套接字時(shí)發(fā)生 I/O 錯誤。 |
shutdownOutput
protected void shutdownOutput() throws IOException
禁用此套接字的輸出流。 對于 TCP 套接字,任何先前寫入的數(shù)據(jù)都將按照 TCP 的正常連接終止順序發(fā)送。 如果在套接字上調(diào)用 shutdownOutput() 后寫入套接字輸出流,則該流將引發(fā) IOException。
Throws:
| Throw名稱 | Throw描述 |
|---|---|
| IOException | 如果關(guān)閉此套接字時(shí)發(fā)生 I/O 錯誤。 |
getFileDescriptor
protected FileDescriptor getFileDescriptor()
返回此套接字的 fd 字段的值。
返回:
此套接字的 fd 字段的值。
getInetAddress
protected InetAddress getInetAddress()
返回此套接字的地址字段的值。
返回:
此套接字的地址字段的值。
getPort
protected int getPort()
返回此套接字的端口字段的值。
返回:
此套接字的端口字段的值。
supportsUrgentData
protected boolean supportsUrgentData()
返回此 SocketImpl 是否支持發(fā)送緊急數(shù)據(jù)。 默認(rèn)情況下,除非在子類中重寫該方法,否則返回 false
返回:
如果支持緊急數(shù)據(jù),則為true
sendUrgentData
protected abstract void sendUrgentData(int data) throws IOException
在套接字上發(fā)送一個(gè)字節(jié)的緊急數(shù)據(jù)。 要發(fā)送的字節(jié)是參數(shù)的低八位
參數(shù):
| 參數(shù)名稱 | 參數(shù)描述 |
|---|---|
| data | 要發(fā)送的數(shù)據(jù)字節(jié) |
Throws:
| Throw名稱 | Throw描述 |
|---|---|
| IOException | 如果發(fā)送數(shù)據(jù)時(shí)出錯。 |
getLocalPort
protected int getLocalPort()
返回此套接字的 localport 字段的值。
返回:
此套接字的 localport 字段的值。
toString
public String toString()
將此套接字的地址和端口作為字符串返回。
覆蓋:
類 Object 中的 toString
返回:
此套接字的字符串表示形式。
setPerformancePreferences
protected void setPerformancePreferences(int connectionTime, int latency, int bandwidth)
設(shè)置此套接字的性能首選項(xiàng)。
套接字默認(rèn)使用 TCP/IP 協(xié)議。一些實(shí)現(xiàn)可能會提供與 TCP/IP 具有不同性能特征的替代協(xié)議。此方法允許應(yīng)用程序表達(dá)自己的偏好,即當(dāng)實(shí)現(xiàn)從可用協(xié)議中進(jìn)行選擇時(shí)應(yīng)如何進(jìn)行這些權(quán)衡。
性能偏好由三個(gè)整數(shù)描述,其值表示短連接時(shí)間、低延遲和高帶寬的相對重要性。整數(shù)的絕對值無關(guān)緊要;為了選擇一個(gè)協(xié)議,這些值被簡單地比較,較大的值表示更強(qiáng)的偏好。負(fù)值表示比正值低的優(yōu)先級。例如,如果應(yīng)用程序更喜歡短連接時(shí)間而不是低延遲和高帶寬,那么它可以使用值 (1, 0, 0) 調(diào)用此方法。如果應(yīng)用程序更喜歡高帶寬而不是低延遲,以及低延遲而不是短連接時(shí)間,那么它可以使用值 (0, 1, 2) 調(diào)用此方法。默認(rèn)情況下,此方法什么也不做,除非它在子類中被覆蓋。
參數(shù):
| 參數(shù)名稱 | 參數(shù)描述 |
|---|---|
| connectionTime | 表示短連接時(shí)間的相對重要性的 int |
| latency | 一個(gè)表示低延遲相對重要性的 int |
| bandwidth | 表示高帶寬相對重要性的 int |
本文名稱:創(chuàng)新互聯(lián)鴻蒙OS教程:鴻蒙OS SocketImpl
文章來源:http://www.5511xx.com/article/cdjehjj.html


咨詢
建站咨詢
