java练习题-网络编程
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第十七章网络
一、判断题
1.已建立的URL对象不能被改变。(t)
2.UDP是面向连接的协议。(F )
3.进程利用socket建立与其他进程的连接。(T )
4.服务器在一个端口等待客户的连接。(T)
5.数据报传输是可靠的,包按顺序先后达到。(F )
6.Java的大部分网络类都包含在Java .applet包中。(F)
7.构成World Wide Web基础的关键协议是http协议。(T)
8.URL是统一资源定位器的缩写。(T )
二、选择题
1.如果在关闭socket时发生一个I/O错误,会抛出▁a▁。
A.IOException
B.UnknownHostException
C.SocketException
D.MalformedURLExceptin
2.当找不到客户的服务器地址时会抛出▁b▁。
A.IOException
B.UnknownHostException
C.SocketException
D.MalformedURLExceptin
3.如果DatagramSocket构造函数不能正确地创建一个DatagramSocket,会抛出▁c▁。A.IOException
B.UnknownHostException
C.SocketException
D.MalformedURLExceptin
4.URL构成函数将决定作为参数的字符串是否是合法的统一资源定位器。如果合法,则初始化包含统一资源定位器的URL对象,否则将产生▁d▁。
A.IOException
B.UnknownHostException
C.SocketException
D.MalformedURLExceptin
5.使用▁b▁类建立一个socket,用于不可靠的数据报的传输。
A.Applet
B.Datagramsocket
C.InetAddress
D.AppletContext
6.▁c▁类的对象中包含有Internet地址。
A.Applet
B.Datagramsocket
C.InetAddress
D.AppletContext
7.InetAddress类的getLocalHost方法返回一个▁c▁对象,它包含了运行该程序的计算机的
主机名。
A.Applet
B.Datagramsocket
C.InetAddress
D.AppletContext
8.下面▁cd▁类能够支持TCP/IP连接。
A.InetAddress
B.Packet
C.Socket
D.ServerSocket
9.▁b▁对象管理基于流的连接。
A.ServeSocker
B.Socket
C.Vector
D.DatagramSocket
三、简述题
1.URL对象有何作用?其中包含那4部分数据?URLConnection类与URL类有何异同?功能上有那些增强?
2.Java提供了流socket和数据报socket,流socket起到什么作用?数据报socket起到什么作用?
3.用一个Java建立一个简单的服务器需要几个步骤?
四、程序设计题
1.编写图形界面的Application程序,Server端和Client端各包含一个TextField和TextArea。请完成消息互发,在TextField中按下Enter键后消息被发送到对方的TextArea中。(参考课成中所讲的例子)
2.编写一个数据报通信程序,一端发送一个int型数据10000,另一端接收到发送的数据并将它打印在屏幕上。
import java.io.*;
import java.applet.*;
import java.awt.*;
import java.awt.event.*;
import .*;
public class ajay extends Applet implements ActionListener
{public static void main(string args[])
{
TextField t1;
TextArea ta1;
Button b1;
DatagramSocket d;
private String s1;
}}
public void init()
{
neethi l=new neethi();
l.start();
try{d=new DatagramSocket(666);}
cath(Exception e){}
SetLayout(new FlowLayout());
ta1=new TextArea("",10,10);
add(ta1);
t1.addActionListener(this);
}
public void actionPerformed(ActionEvent event)
{
int i;
if(event.getSoure()==t1)
{
try{
byte b[]=new byte[1024];
s1=t1.getText();
t1.setText("");
for(i=0;i b[i]=(byte)s1.charAt(i); d.send(new DatagramPacket(b,i,InetAddress.getByName("JC0118"),999)); } catch(Exception e){} } class neethi extends Thread { public void run() { int c,j=0; try{ byte b[]=new byte[1024]; DatagramSocket d=new DatagramSocket(999); while(true) { DatagramPacket p=new DatagramPacket(b,1024); d.receive(p);