java练习题-网络编程

java练习题-网络编程
java练习题-网络编程

第十七章网络

一、判断题

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 https://www.360docs.net/doc/6c1417352.html,.*;

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);

ta1.append(new String(p.getData(),0,0,p.getLength()));

ta1.append('\n'+" ");

}

}

catch(Exception y){}

}

}

}

相关主题
相关文档
最新文档