版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
網絡程序設計—Java語言網絡編程練習題1Java網絡程序位于TCP/IP參考模型的哪一層?a)網絡層互聯層b)應用層c)傳輸層網絡d)主機-網絡層答案:bCompanyLogo練習題2以下哪些協議位于傳輸層?a)TCPb)HTTPc)SMTPd)UDPf)IP答案:a,dCompanyLogo練習題3假定一個進程已經占用TCP的80端口,它還能否占用UDP的80端口?a)可以b)不可以答案:aCompanyLogo練習題4一個客戶進程執行以下代碼,以下哪些說法正確?Socketsocket1=newSocket(host,port);Socketsocket2=newSocket(host,port);a)socket1與socket2占用不同的本地端口。b)Socket構造方法中的port參數指定占用的本地端口。c)當Socket構造方法成功返回,就表明建立了與服務器的一個TCP連接。d)執行第二行程序代碼會拋出異常,因為一個客戶進程只能與服務器端建立一個TCP連接。答案:a,cCompanyLogo練習題5一個服務器進程執行以下代碼:以下哪些說法正確?
ServerSocket
serverSocket=newServerSocket(80);Socketsocket=serverSocket.accept();
intport=socket.getPort();a)服務器進程占用80端口。b)socket.getPort()方法返回服務器進程占用的本地端口,此處返回值是80。c)當serverSocket.accept()方法成功返回,就表明服務器進程接收到了一個客戶連接請求。d)socket.getPort()方法返回客戶端套節字占用的本地端口。答案:a,c,dCompanyLogo練習題6對于以下程序代碼:下面哪些說法是正確的?Socketsocket=newSocket();SocketAddressra1=newInetSocketAddress("localhost",8000);SocketAddressra2=newInetSocketAddress("localhost",8001);socket.connect(remoteAddr1,60000);//第4行socket.connect(remoteAddr2,60000);//第5行a)以上程序代碼可以順利編譯和運行通過。b)第1行程序代碼創建了一個與本地匿名端口綁定的Socket對象。c)第1行程序代碼創建的Socket對象沒有與任何服務器建立連接,并且沒有綁定任何本地端口。d)第5行程序代碼會運行出錯,因為一個Socket對象只允許建立一次連接。e)第4行程序代碼使Socket對象與一個服務器建立連接,并且綁定一個本地匿名端口。答案:c,d,eCompanyLogo練習題7當客戶端執行以下程序代碼時:Socketsocket=newSocket("angel",80);如果遠程服務器angel不存在,會出現什么情況?a)構造方法拋出UnknownHostException異常。b)客戶端一直等待連接,直到連接超時,從而拋出
SocketTimeoutException。c)拋出BindException。d)構造方法返回一個Socket對象,但它不與任何服務器連接。答案:aCompanyLogo練習題8Socket類的哪個方法返回Socket對象綁定的本地端口a)getPort()b)getLocalPort()c)getRemotePort()d)不存在這樣的方法,因為Socket對象綁定的本地端口對程序是透明的。答案:bCompanyLogo練習題9如何判斷一個Socket對象當前是否處于連接狀態?a)boolean
isConnected=socket.isConnected()&&socket.isBound();b)boolean
isConnected=socket.isConnected()&&!socket.isClosed();c)boolean
isConnected=socket.isConnected()&&!socket.isBound();d)boolean
isConnected=socket.isConnected();答案:bCompanyLogo練習題10關于ServerSocket構造方法的backlog參數,以下哪些說法是正確的?a)backlog參數用來顯式設置操作系統中的連接請求隊列的長度。b)如果沒有設置backlog參數,那么連接請求隊列的長度由操作系統決定。c)當服務器端的連接請求隊列已滿,客戶端就無法建立與服務器的連接。d)如果backlog參數的值大于操作系統限定的隊列的最大長度,那么backlog參數被忽略。e)連接請求隊列直接由ServerSocket創建并管理。f)ServerSocket的accept()方法從連接請求隊列中取出連接請求。答案:a,b,d,fCompanyLogo練習題11對于以下程序代碼,哪個說法是正確的
ServerSocket
serverSocket=newServerSocket(8000);
serverSocket.setReuseAddress(true);
a)以上代碼運行時出錯b)以上代碼編譯時出錯c)以上代碼盡管編譯和運行不會出錯,但對SO_REUSEADDR選項的設置無效d)以上說法都不正確答案:cCompanyLogo練習題12如何判斷一個ServerSocket已經與特定端口綁定,并且還沒有被關閉?a)boolean
isOpen=serverSocket.isBound();b)boolean
isOpen=serverSocket.isBound()&&!serverSocket.isClosed();c)boolean
isOpen=serverSocket.isBound()&&serverSocket.isConnected();d)boolean
isOpen=!serverSocket.isClosed();答案:bCompanyLogo練習題13ServerSocket與Socket都有一個SO_TIMEOUT選項,它們的作用是否相同?a)相同b)不同答案:bCompanyLogo練習題14在服務器程序中,線程在哪些情況可能會進入阻塞狀態?a)線程執行Socket的getInputStream()方法獲得輸入流。b)線程執行Socket的getOutputStream()方法獲得輸出流。c)線程執行ServerSocket的accept()方法。d)線程從Socket的輸入流讀入數據。e)線程向Socket的輸出流寫一批數據。答案:c,d,eCompanyLogo練習題15ServerSocketChannel可能發生哪些事件?a)SelectionKey.OP_ACCEPT:接收連接就緒事件b)SelectionKey.OP_CONNECT:連接就緒事件。c)SelectionKey.OP_READ:讀就緒事件。d)SelectionKey.OP_WRITE:寫就緒事件。答案:aCompanyLogo練習題16SocketChannel可能發生哪些事件?a)SelectionKey.OP_ACCEPT:接收連接就緒事件b)SelectionKey.OP_CONNECT:連接就緒事件。c)SelectionKey.OP_READ:讀就緒事件。d)SelectionKey.OP_WRITE:寫就緒事件。答案:b,c,dCompanyLogo練習題17對于以下代碼:
intn=socketChannel.read(byteBuffer);//假定n>=0
byteBuffer.flip();假定執行socketChannel.read(byteBuffer)方法前,byteBuffer的容量、極限和位置分別為c、l和p,執行完以上代碼后,byteBuffer的容量、極限和位置分別是多少?a)容量為c,極限為l,位置為p+nb)容量為c,極限為p+n,位置為0c)容量為l,極限為p+n,位置為0d)容量為c,極限為p+n,位置為p+n答案:bCompanyLogo練習題18在哪些情況,SelectionKey對象會失效?a)程序調用SelectionKey的cancel()方法。b)程序調用SelectionKey的close()方法。c)關閉與SelectionKey關聯的Channel。d)與SelectionKey關聯的Selector被關閉。答案:a,c,dCompanyLogo練習題19線程執行Selector對象的select(longtimeout)方法時進入阻塞狀態,在哪些情況,線程會從select()方法中返回?a)至少有一個SelectionKey的相關事件已經發生。b)其他線程調用了Selector對象的wakeup()方法。c)與Selector對象關聯的一個SocketChannel對象被關閉。d)當前執行select()方法的線程被其他線程中斷。e)超出了等待時間。答案:a,b,d,eCompanyLogo練習題20以下哪些敘述是正確的?a)DatagramSocket的send(DatagramPacket
src)方法發送數據報時,如果無法送達接收方,該方法會拋出IOException。b)UDP協議是無連接的協議。c)對于用于接收數據的DatagramPacket,如果實際接收到的數據報的長度大于DatagramPacket的長度,那么多余的數據就會被丟棄。d)DatagramSocket的getInputStream()方法用于獲得輸入流。答案:b,cCompanyLogo練習題21以下是DatagramPacket的構造方法,哪些用于發送數據報?a)public
DatagramPacket(byte[]data,intlength)b)public
DatagramPacket(byte[]data,intoffset,intlength)c)public
DatagramPacket(byte[]data,intoffset,int
length,InetAddress
address,intport)d)public
DatagramPacket(byte[]data,int
offset,int
length,SocketAddressaddress)答案:c,dCompanyLogo練習題22當DatagramSocket接收到了來自任意一個主機的數據報,如果知道該數據報的發送者的UDP端口?a)調用DatagramPacket的getPort()方法b)調用DatagramSocket的getPort()方法c)調用DatagramPacket的getRemotePort()方法d)調用DatagramSocket的getRemotePort()方法答案:aCompanyLogo練習題23關于DatagramSocket的connect()和disconnect()方法,下面哪些說法是正確?a)connect()方法使得DatagramSocket暫時只能與特定的遠程DatagramSocket通信。b)DatagramSocket的connect()方法與Socket的connect()方法的作用相同。c)可以對一個DatagramSocket對象多次調用connect()方法。d)調用了DatagramSocket的disconnect()方法后,這個DatagramSocket就失效了,不能再收發數據報。答案:a,cCompanyLogo練習題24關于DatagramSocket的選項,下面哪些說法是正確的?a)SO_TIMEOUT選項表示接收數據報以及發送數據報時的等待超時時間。b)許多網絡都都限定了接收緩沖區大小的最大值,如果DatagramSocket的setReceiveBufferSize(intsize)方法的參數size超過該值,那setReceiveBufferSize(
intsize)方法所作的設置無效。c)UDPSocket和TCPSocket的SO_REUSEADDR選項的作用相同。d)SO_BROADCAST選項決定是否允許對網絡廣播地址收發數據報。答案:b,dCompanyLogo練習題25關于DatagramChannel的read(ByteBuffer[]srcs)方法,下面哪些說法是正確的?a)read()方法要求DatagramChannel已經建立連接。b)如果ByteBuffer緩沖區無法容納數據報中的所有數據,那么read()方法會拋出BufferOverflowException。c)當DatagramChannel工作于非阻塞模式,并且沒有就緒的數據報,read()方法立即返回0。d)當DatagramChannel工作于阻塞模式,并且沒有就緒的數據報,read()方法會進入阻塞狀態。答案:a,c,dCompanyLogo習題在TCP/IP協議簇中,
協議屬于網絡層的無連接協議。(24)A.IP
B.SMTPC.SNMP
D.TCP在TCP/IP協議簇中,
屬于自上而下的第二層。
(25)A.ICMP
B.SNMP
C.UDP
D.IP以下關于TCP/IP體系結構的描述中,正確的是_
_。A.TCP/IP提供無連接的網絡服務,所以不適合話音和視流等流式業務
B.TCP/IP定義了OSI/RM的物理層和數據鏈路層
C.在TCP/IP體系結構中,一個功能層可以有多個協議協同工作
D.TCP/IP體系結構的應用層相當于OSI/RM的應用層和表示層CompanyLogo練習求下列地址的網絡編號和廣播地址
55/160/28CompanyLogo練習路由器端口的IP地址為8/22,則該端口的網絡地址是
(27)。(27)A. B.C. D.某主機的IP地址為54/22,其子網掩碼是
___A. B.C. D.CompanyLogo練習某公司網絡地址是/20,被劃分成16個子網,則每個子網的子網掩碼為(30),包含的最大的主機數是(31)。(30)A. B.C. D.(31)A.250 B.254C.255D.256DBAABCompanyLogo練習CompanyLogo練習某主機的ip地址為2/20,其子網掩碼為__A.B.C.D.下面的選項中,屬于本地回路地址的是_____A.B.C.D.常用的網絡地址有A、B、C三類,一個B類網絡最多可以包含多少
(30)主機,B類網絡默認子網掩碼為
(31)
(30)A.1600個B.6萬多個C.300個D.254個
(31)A.B.C.D.
BCBBCompanyLogo練習題26默認的序列化方式有什么特點?a)僅僅對對象的非transient的實例變量進行序列化。b)不會序列化對象的transient的實例變量。c)會序列化靜態變量。d)會序列化對象的所有public類型的成員變量。答案:a,bCompanyLogo練習題27默認的反序列化方式有什么特點?a)可能會調用類的靜態代碼塊。b)一定會調用類的靜態代碼塊。c)不會調用類的任何構造方法。d)會調用類的不帶參數的構造方法。答案:a,cCompanyLogo練習題28關于Externalizable接口,下面哪些說法正確?a)Externalizable接口繼承自Serializable接口。b)writeExternal()方法負責序列化操作。c)readExternal()方法負責反序列化操作。d)在對實現了Externalizable接口的類的對象進行反序列化時,一定會先調用類的不帶參數的構造方法。e)在對實現了Externalizable接口的類的對象進行反序列化時,一定會先調用類的靜態代碼塊。f)一個類如果實現了Externalizable接口,那么它必須具有public類型的不帶參數的構造方法。答案:a,b,c,d,fCompanyLogo練習題29以下哪些方法在Class類中定義?a) getConstructors()b) getPrivateMethods()c) getDeclaredFields()d) getImports()e)setField()答案:a,cCompanyLogo練習題30以下哪些說法正確?a)動態代理類與靜態代碼類一樣,必須由開發人員先編寫源代碼,并編譯成.class文件。b)代理類與被代理類的具有同樣的接口。c)java.lang.Exception類實現了java.io.Serializable接口,因此Exception對象可以在網絡上傳輸。d)java.lang.reflect包中的Proxy類提供了創建動態代理類的方法。答案:b,c,dCompanyLogo練習題31以下哪些說法
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2026年初中美術歷年真題沖刺押題
- 稅法原理課后題及答案詳細說明
- 駕駛員(押運員)聘用合同
- 五年級下冊數學北師大含答案 平均數的再認識
- 天津市環城四校2025-2026學年高一下學期期末考試化學試卷(含答案)
- 臨時用電防雷設置標準
- 2026生物基材料行業供需調研環保材料投資選擇布局規劃分析研究報告
- 2026區塊鏈糧食溯源系統開發應用投資評估用戶采用狀況
- 湖南張家界市桑植縣2026年上學期八年級期末質量監測英語試卷(含答案)
- 湖南衡陽市耒陽市2026年上學期八年級英語期末考試試卷(含答案)
- 云南電力技術有限責任公司招聘筆試題庫2026
- 2026KDIGO慢性腎臟病貧血管理指南解讀
- 貴州省遵義市紅花崗區2025-2026學年四下數學期末檢測試題含解析
- 2026年安徽省直機關公開遴選公務員筆試題及答案解析(B類)
- 2026年秋新教材人教版九年級上冊英語Unit 1-8單詞背記表
- 軀體形式障礙身心共病管理
- 2026年甘肅高考地理試卷附答案
- 廣州市2025-2026學年度八下語文期末仿真模擬卷(一)(解析版)
- 雨季工廠作業安全培訓內容
- 2026內蒙古聯合交易控股集團(內蒙古產權交易中心)及所屬子公司(第一批)員工招聘10人農業考試參考題庫及答案解析
- 2025湖南理工職業技術學院教師招聘考試題目及答案
評論
0/150
提交評論