当前位置:首页 » 编程语言 » java网络编程实例

java网络编程实例

发布时间: 2022-08-10 10:08:34

java网络编程实例如何实现广域网通讯

这个涉及到打孔,上网找下java打孔p2p

⑵ java网络编程,怎样在客户端和服务器间实现通信。

写个简单点的服务器跟客服端就行了我写了个很简单的,只能在一个客户端跟一个服务器通信,在控制台输入下面这个是服务器import java.io.*;
import java.net.*;
import java.util.Scanner;public class Server
{
public static void main(String[] args)
{
try {
ServerSocket server=new ServerSocket(8888);//定义客户端的端口号
Socket client=server.accept();//定义一个Socket对象

InputStream is=client.getInputStream();//服务器接受信息输入流,也就是接受从服务器段发送过来的消息
BufferedReader br=new BufferedReader(new InputStreamReader(is));//用bufferedreader包装下输入流

OutputStream os=client.getOutputStream();//这是用来给服务器发送消息的输出流
PrintStream ps=new PrintStream(os);
Scanner scanner=new Scanner(System.in);//从键盘输入字符串

boolean flag=true;//定义一个死循环,让服务器不停的接受从客户端发送来的字符串
while(flag)
{
String s=br.readLine();//s是从客户端接受到得字符串
System.out.println(s);

String s2=scanner.nextLine();//s2是写给客户端的字符串
ps.println(s2); //给客户端发送你写的东西
}
client.close();
} catch (IOException e) {//try 跟catch你不用管,这是用来处理异常的,就是固定格式

e.printStackTrace();
}
}
} 下面是客户端import java.io.*;
import java.net.*;
import java.util.Scanner;public class Client
{ public static void main(String[] args)
{
try
{
Socket client=new Socket("192.168.--.--",8888);//IP地址是个字符串,端口号是个整数,这个端口号要跟前面你写的那个一样,还有IP地址,写你的机器的IP地址

InputStream is=client.getInputStream();//这边的两个流跟上面服务器的差不多的作用
BufferedReader bf=new BufferedReader(new InputStreamReader(is));

OutputStream os=client.getOutputStream();
PrintStream ps=new PrintStream(os);
Scanner scanner=new Scanner(System.in);
boolean flag=true;
while(flag)//这句话可以让客户端不停的说话
{
String s2=scanner.nextLine();
ps.println(s2);

String s=bf.readLine();
System.out.println(s); }

client.close();

}
catch (UnknownHostException e)
{
e.printStackTrace();
}
catch (IOException e)
{
e.printStackTrace();
} }}

⑶ 求java nio网络编程的小例子,要求客户端一直与服务器保持连接

import java.awt.*;
import java.awt.event.*;
import java.io.IOException;
import java.net.*;
import java.io.*;

public class chatClient extends Frame {

/**
* @param args
*/
TextField tfTxT=new TextField();
TextArea taContent=new TextArea();
Socket s=null;
DataOutputStream dos=null;
DataInputStream dis=null;
private boolean bConnected =false;

public static void main(String[] args) {
new chatClient().lunachFrame();
}

private class RecvThread implements Runnable{

public void run() {
try{
while(bConnected){
String str=dis.readUTF();
taContent.setText(taContent.getText()+str+'\n');
}
}catch(IOException e){
e.printStackTrace();
}
}

}

public void lunachFrame(){
this.setLocation(400, 300);
this.setSize(300,300);
//this.setLayout(new FlowLayout());
this.add(tfTxT,"South");
this.add(taContent,"North");
pack();
tfTxT.addActionListener(new TFListener());
this.addWindowListener(new WindowClose());
this.setVisible(true);
connect();
new Thread(new RecvThread()).start();
}

public void connect(){
try {
s= new Socket("127.0.0.1",8888);
dos =new DataOutputStream(s.getOutputStream());
dis =new DataInputStream(s.getInputStream());
System.out.println("connected!");
bConnected=true;
} catch (UnknownHostException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}

public void disconnect(){
try {
dos.close();
s.close();
} catch (Exception e) {
// TODO 自动生成 catch 块
e.printStackTrace();
}
}

class WindowClose extends WindowAdapter{

@Override
public void windowClosing(WindowEvent e) {
// TODO 自动生成方法存根
System.exit(0);
disconnect();
}

}

private class TFListener implements ActionListener{

public void actionPerformed(ActionEvent e) {
String str=tfTxT.getText().trim();//trim去掉两边空格
//taContent.setText(str);
tfTxT.setText("");
try {
dos.writeUTF(str);
dos.flush();
//dos.close();

} catch (IOException e1) {
e1.printStackTrace();

}
}
}
}

======================================
import java.io.IOException;
import java.net.*;
import java.io.*;
import java.util.*;

public class ChatServer {
List<Client> clients=new ArrayList<Client>();
Client c=null;

public static void main(String[] args){
new ChatServer().start();
}

public void start(){
boolean started=false;
ServerSocket ss=null;
DataInputStream dis=null;
try{
ss=new ServerSocket(8888);
started =true;
}catch(Exception e)
{
e.printStackTrace();
}
try{
while(started){
Socket s=ss.accept();
c=new Client(s);//启动线程,实行run()方法
System.out.println("a client connected!");
new Thread(c).start();//启动start方法,循环.start是Thread中的方法与这上面的start无关
clients.add(c);
//dis.close();
}
} catch (Exception e) {

//e.printStackTrace();
}
finally{
try {
ss.close();
} catch (IOException e) {
// TODO 自动生成 catch 块
e.printStackTrace();
}
}
}

class Client implements Runnable{

private Socket s;
private DataInputStream dis =null;
private boolean bConnected =false;
private DataOutputStream dos=null;

public Client(Socket s){
this.s=s;
try {
dis=new DataInputStream(s.getInputStream());
dos =new DataOutputStream(s.getOutputStream());
bConnected =true;
} catch (IOException e) {
// TODO 自动生成 catch 块
e.printStackTrace();
}
}

public void send(String str)throws Exception{
dos.writeUTF(str);

}

public void run() {
try{
while(bConnected){
String str = dis.readUTF();
System.out.println(str);
for(int i=0;i<clients.size();i++){
c=clients.get(i);
c.send(str);
}
/*for(Iterator<Client> it=clients.iterator();it.hasNext();){
Client c=it.next();
c.send(str);
}*/
}
}catch(SocketException e){
clients.remove(this);
System.out.println("客户下线了");
}
catch(EOFException e){
System.out.println("Client closed");
}
catch (Exception e){

//e.printStackTrace();
}
finally{
try {
if(dis !=null) dis.close();
if(dos !=null) dos.close();
if(s!=null) s.close();
} catch (Exception e1) {
// TODO 自动生成 catch 块
//e1.printStackTrace();
}
}
}
}

}

第一个是客户端,
第二个是server端

⑷ 《Java网络编程核心技术详解》pdf下载在线阅读全文,求百度网盘云资源

《Java网络编程核心技术详解》网络网盘pdf最新全集下载:
链接: https://pan..com/s/1_XTd5UzNdDfNK3oN7lcUYQ

?pwd=htjm 提取码: htjm
简介:本书结合大量典性的实例,详细介绍了用Java来编写网络应用程序的技术。本书的范例都基于最新的JDK10版本。本书内容包括:Java网络编程的基础知识、 套接字编程、非阻塞通信、创建HTTP服务器与客户程序、数据报通信、对象的序列化与反序列化、Java反射机制、RMI框架、JDBC API、JavaMail API、MVC设计模式、安全网络通信、XML数据处理和Web服务。

⑸ Java网络编程如何初始化套接字

不同的构造方法不仅带的参数不同,所具有的意义也不一样。下面分别解析这两个类的实例初始化过程。 ServerSocket 实例的初始化 ServerSocket 类提供了四个构造器: public Socket(String host, int port) throws UnknownHostException, IOException public Socket(InetAddress address, int port) throws IOException public Socket(String host, int port, InetAddress localAddr, int localPort) throws IOException public Socket(InetAddress address, int port, InetAddress localAddr, int localPort) throws IOException public Socket() public Socket(Proxy proxy) 带参构造器用来创建已绑定的服务器套接字,也就是说构造成功后它就已经开始侦听指定的端口,且能够调用 accept() 方法来接受客户端连接。默认构造器则会创建未绑定的服务器套接字,构造成功后必须手动将其绑定到一个本地地址才能用,在绑定之前可以进行一些选项配置。 带参构造器 总的来说,带参构造器提供了三个参数: port 指定该服务器套接字所要侦听的本地端口。如果为 0,则由系统自动分配一个端口号,这必须以另外的方式让客户端获取端口号。 backlog 这个名词目前还没有合适的译名。底层系统的 TCP 实现会维护一个连接队列,该队列缓存了已被 TCP 处理完毕,但还没有被服务器套接字接受的客户端连接。一旦某个连接被接受(通过调用 accept() 方法),它就会被从队列中移除。backlog 参数就用于指定队列的最大长度,默认值为 50,但这个值只是一个建议,底层系统可能根据需要自动调整。如果队列满了,则其行为是平台相关的:微软的 WINSOCK 会拒绝新的连接,其他实现则什么都不做。严格地说,微软没有遵守规范,破坏了游戏规则…… bindAddr 一台机器可能会有多个本地 IP 地址,例如同时使用多块网卡。使用其他两个带参构造器时,该参数为 null,服务器套接字会在所有的本地 IP 地址(0.0.0.0 或 ::0)上侦听。如果希望只侦听一个地址,则可使用该参数。 默认构造器 如果使用默认构造器,在绑定地址前,还可以做些配置。绑定操作由两个 bind 方法定义,参数类似于带参构造器。配置项包括以下方面(都必须在绑定前配置): 设置是否重用本地地址 该选项由 setReuseAddress(boolean on) 方法配置,对应底层系统的 SO_REUSEADDR 套接字选项。JDK 没有定义该选项的默认值。如果该选项为 false,则在关闭 TCP 连接时,为了保证可靠性,该连接可能在关闭后的一段时间(大约两分钟)内保持超时状态(通常称为 TIME_WAIT 状态或 2MSL 等待状态),这段时间里无法将新建的服务器套接字绑定到同一个地址。在开发阶段,服务器可能不断重启,打开改选项会非常有用。 设置接收缓冲区大小 该选项由 setReceiveBufferSize(int size) 方法配置,对应底层系统的 SO_RCVBUF 套接字选项,单位是字节。《RFC 1323 - TCP Extensions for High Performance》将缓冲区大小定义为 64KB。该选项只是一个建议值,底层系统可能根据需要自行调整。 设置超时值 该选项由 setSoTimeout(int timeout) 方法配置,对应底层系统的 SO_TIMEOUT 套接字选项,单位是毫秒。默认值为 0。该选项影响 accept 方法的阻塞时间长度,如果超时将引发 SocketTimeoutException。如果设为 0,则表示永不超时。 设置性能首选项 性能首选项包括连接时间、延迟和带宽三个选项,由 setPerformancePreferences(int connectionTime, int latency, int bandwidth) 方法配置。这三个数值分别表示短连接时间、低延迟和高带宽的相对重要性,数值越大则越重要;其各自的绝对值没有意义。该方法的初衷是为了让 Java 能在用非 TCP/IP 实现的套接字环境下工作得更好,某些需要对网络进行调优的程序也可以将这三个首选项作为配置参数提供给用户。 Socket 实例的初始化 Socket 类提供了六个公共构造器(已过时的除外): public Socket(String host, int port) throws UnknownHostException, IOException public Socket(InetAddress address, int port) throws IOException public Socket(String host, int port, InetAddress localAddr, int localPort) throws IOException public Socket(InetAddress address, int port, InetAddress localAddr, int localPort) throws IOException public Socket() public Socket(Proxy proxy) 前四个构造器创建已连接的客户端套接字,也就是说构造的时候就会去连接服务器。前两个构造器需要提供服务器的地址和端口作为参数,本地地址和端口由系统自动分配;后两个允许手动指定本地地址和端口,但极少使用。后两个构造器创建未连接的套接字,创建后需要调用 connect 方法手动连接,连接之前可以做一些配置。最后一个构造器接受一个代表代理服务其的 Proxy 对象,JDK 支持 HTTP 和 SOCKS(V4 或 V5)两种代理类型。 连接前的配置 在连接前,客户端套接字不仅像服务器套接字那样可以设置是否重用本地地址、缓冲区大小、超时值和性能首选项,还能够配置以下各项(都必须在连接前配置): 设置是否保持活跃 该选项由 setKeepAlive(boolean on) 方法配置,对应底层系统的 SO_KEEPALIVE 套接字选项。默认值为 false。如果打开该选项,则套接字会定期自动发送保持活跃的探测性消息,类似于心跳检测。根据《RFC 1122 - Requirements for Internet Hosts》的规定,保持活跃机制只是 TCP 的一个可选功能,如果支持的话,默认必须为 false,而且这种机制默认在成功建立连接后,且连续两小时没有数据传输的情况下才会被激活。从另一方面来看,通过套接字的 I/O 操作完全可以知道连接是否还有效,所以该选项的实用价值不大。 设置是否收发带外数据 该选项由 setOOBInline(boolean on) 方法配置,对应底层系统的 SO_OOBINLINE 套接字选项。默认值为 off。带外数据(Out-of-band Data)也叫做紧急数据,表示数据很重要,需要使用不同于发送普通数据的一个专用通道来发送。打开该选项后,就可以调用 sendUrgentData(int data) 方法发送一个字节的紧急数据。JDK 对带外数据只提供了有限支持,紧急数据将会和普通数据一起被收到,并且无法自动区分。该选项对应用开发人员意义不大。 设置是否从容关闭连接 该选项由 setSoLinger(boolean on, int linger) 方法配置,对应底层系统的 SO_LINGER 套接字选项。默认为 false。该选项只会影响套接字的关闭,其中的 linger 参数表示超时时间,单位为秒。如果打开改选项:如果将 linger 设为 0,则关闭套接字的时候,未发送的数据会被丢弃,且另一端会出现连接被同位体重置的异常;如果 linger 非 0,则关闭套接字的线程将被阻塞,直到数据全部发送或超时,超时后的行为与底层系统相关,JDK 无法控制。如果关闭该选项,则套接字正常关闭,数据也会全部发送。由于底层实现的差异性,不提倡应用开发人员打开该选项。 设置是否延迟发送数据 该选项由 setTcpNoDelay(boolean on) 方法配置,对应底层系统的 TCP_NODELAY TCP 选项。默认值为 off。打开该选项将禁用 Nagle 算法,TCP 包会立即发送;关闭该选项则会启用 Nagle 算法,多个较小的 TCP 包会被组合成一个大包一起发送,虽然发送延迟了,但有利于避免网络拥塞。默认为 false。该选项对实时性很强的程序可能有用,但一般的程序不需要关心。 设置流量类别 该选项由 setTrafficClass(int tc) 方法配置,对应底层系统的“流量类别”套接字属性。该选项用于向网络(例如路由器)提示从该套接字发送的包需要获取哪些服务类型,对本地 TCP 协议栈没有影响。IPv4 和 IPv6 分别定义了多个不同的值,例如 IPv4 将 0x08 定义为最大吞吐量,0x10 定义为最小延迟,等等。可以用或运算将多个值合并为一个选项。该选项用来调整性能,需要根据实际情况设置。由于只是建议值,可能被网络忽略。

⑹ java网络编程的基本内容有哪些其特点和优势如何请进行论述。

1.用Java编写网络程序是非常简单的——至少比在现有其他编程环境下要简单得多。本书的新版本带给开发者的是Java发展的最新特性。一旦开始使用Java的网络API进行网络编程,我们能做到可以想象到的一切事情。 本书对开发网络程序进行了非常完整的介绍(从应用程序和applet两方面),它包括了从网络基础到远程方法调用(RMI)的所有内容。本书的章节涵盖了TCP和UDP套接字、组播、内容和协议处理器以及两个新的API:JSSE(SSL实现)和JavaMail API。扩充了I/O和多线程等基础知识。还讲述了在不直接编写网络代码时你所能够实现的内容,例如如何用URL实现自己的目标、applet的基本功能以及如何用Swing处理HTML。无论是有经验的网络程序员还是只想随意看一看的初学者,都会发现本书对于Java的网络程序类的学习是相当完整的。本书内容涵盖了:1、Java 2(JDK 1.2和1.3)和Java1.1。2、许多完整的程序(可在线获取)。3、网络编程基础的所有方面。4、一些高级专题,包括RMI和组播。5、许多重要的API,有JSSE、JavaMail以及Swing中的HTML解析器。Elliotte Rusty Harold是着名的Java网站Cafe Au Lait的作者(http://metalab.unc.e/javafaq),国际知名的计算机专家。他是《Java I/O》以及其他一些Java和XML技术图书的作者。 “直到找到这本书之后,我才开始真正理解Java网络编程。”——Bruce Eckel,《Java编程思想》的作者.
2.JAVA的特点§ 1.2 Java的特点

Java是一个广泛使用的网络编程语言 ,它是一种新的计算概念。

首先 ,作为一种程序设计语言 ,它简单、面向对象、不依赖于机器的结构、

具有可移植性、鲁棒性、安全性、并且提供了并发的机制、具有很高的性能。其

次 ,它最大限度地利用了网络 ,Java的小应用程序 (applet)可在网络上传输而

不受 CPU和环境的限制。另外 ,Java还提供了丰富的类库 ,使程序设计者可以很

方便地建立自己的系统。

下面我们分别从这三个方面来讨论 Java的特点 ,然后通过把 Java与 C,

C++相比进一步指出它所具有的优点。

一、 Java语言

Java语言有下面一些特点 :简单、面向对象、分布式、解释执行、鲁棒、

安全、体系结构中立、可移植、高性能、多线程以及动态性。

:1.简单性

Java语言是一种面向对象的语言 ,它通过提供最基本的方法来完成指定的

任务 ,只需理解一些基本的概念 ,就可以用它编写出适合于各种情况的应用程

序。 Java略去了运算符重载、多重继承等模糊的概念 ,并且通过实现自动垃圾

收集大大简化了程序设计者的内存管理工作。另外 ,Java也适合于在小型机上运

行 ,它的基本解释器及类的支持只有 40KB左右 ,加上标准类库和线程的支持也

只有 215KB左右。库和线程的支持也只有 215KB左右。

2.面向对象

Java语言的设计集中于对象及其接口 ,它提供了简单的类机制以及动态的

接口模型。对象中封装了它的状态变量以及相应的方法 ,实现了模块化和信息

隐藏 ;而类则提供了一类对象的原型 ,并且通过继承机制 ,子类可以使用父类

所提供的方法 ,实现了代码的复用。

3.分布性

Java是面向网络的语言。通过它提供的类库可以处理 TCP/IP协议 ,用户

可以通过 URL地址在网络上很方便地访问其它对象。

4.鲁棒性

Java在编译和运行程序时 ,都要对可能出现的问题进行检查 ,以消除错误

的产生。它提供自动垃圾收集来进行内存管理 ,防止程序员在管理内存时容易

产生的错误。通过集成的面向对象的例外处理机制 ,在编译时,Java提示出可能

出现但未被处理的例外 ,帮助程序员正确地进行选择以防止系统的崩溃。另外,

Java在编译时还可捕获类型声明中的许多常见错误 ,防止动态运行时不匹配问题

的出现。

5.安全性

用于网络、分布环境下的 Java必须要防止病毒的入侵。 Java不支持指针,

一切对内存的访问都必须通过对象的实例变量来实现 ,这样就防止程序员使用

"特洛伊 "木马等欺骗手段访问对象的私有成员 ,同时也避免了指针操作中容易

产生的错误。

6.体系结构中立

Java解释器生成与体系结构无关的字节码指令 ,只要安装了 Java运行时

系统 ,Java程序就可在任意的处理器上运行。这些字节码指令对应于 Java虚拟

机中的表示 ,Java解释器得到字节码后 ,对它进行转换 ,使之能够在不同的平

台运行。

7.可移植性

与平台无关的特性使 Java程序可以方便地被移植到网络上的不同机器。

同时 ,Java的类库中也实现了与不同平台的接口 ,使这些类库可以移植。另外,

Java编译器是由 Java语言实现的 ,Java运行时系统由标准 C实现 ,这使得Java

系统本身也具有可移植性。

8.解释执行

Java解释器直接对 Java字节码进行解释执行。字节码本身携带了许多

编译时信息 ,使得连接过程更加简单。

9.高性能

和其它解释执行的语言如 BASIC、 TCL不同 ,Java字节码的设计使之能

很容易地直接转换成对应于特定CPU的机器码 ,从而得到较高的性能。

10.多线程

多线程机制使应用程序能够并行执行 ,而且同步机制保证了对共享数据

的正确操作。通过使用 多线程 ,程序设计者可以分别用不同的线程完成特定

的行为 ,而不需要采用全局的事件循环机制 ,这样就很容易地实现网络上的实

时交互行为。

11.动态性

Java的设计使它适合于一个不断发展的环境。在类库中可以自由地加入

新的方法和实例变量而不会影响用户程序的执行。并且 Java通过接口来支持

多重继承 ,使之比严格的类继承具有更灵活的方式和扩展性。
参考资料:http://chat.xwsy.com/wangshangjiaocheng/java/Java.htm
3.Java已用动态的交互应用软件使Web栩栩如生。它使开发人员
具有‘编写一次到处运行TM”的巨大能力。而且,借助其JavaAPI
及其编程语言上的Java虚拟机,它已产生一种分布信息的崭新模式。
这种模式叫做Java企业计算,正在帮助各企业以各种不同的方法取
得竞争优势。网管和控制已大大简化。软件分配基本上是免费的,
而且立即可实现。电子贸易已获得。占有成本大幅度降低。信息和
应用软件到处可存取。
Java建立在简单的前提基础上,即所有微处理器都应讲同一种
语言——所有内部采用芯片的产品都应能一起工作,无缝而方便地
共享信息。它已经改变企业和个人同Internet大交道的方式。现在,
它正在对消费类产品产生明显的影响,而且从总体上更加深刻地影
响企业计算。
借助Java,您可自由自在地使用您已拥有的硬件和软件。这是因
为Java是独立于平台的。它还可使您超越企业计算,使应用软件在便
携式计算机、信息亭、电视、蜂窝电话和其他大量设备上运行。
全世界的公司都已发现Java数不胜数的用途。所有用途可从其无
可比拟的能力,即提高可靠性、安全性和简化各种不同计算产品和
环境的能力中受益非浅,而且节省的时间和费用十分可观。
Java无处不在。它已拥有几百万个用户,其发展速度要快于在它
以前的其他任何一种计算机产品。它可位于任何地方,而且能到处运
行。Java正在迅速被用做传播信息的事实上标准,这是因为它既可给
企业,也可给最终用户带来似乎数不清的好处。

⑺ 求《Java网络编程核心技术详解》全文免费下载百度网盘资源,谢谢~

《Java网络编程核心技术详解》网络网盘pdf最新全集下载:
链接: https://pan..com/s/1_XTd5UzNdDfNK3oN7lcUYQ

?pwd=htjm 提取码: htjm
简介:本书结合大量典性的实例,详细介绍了用Java来编写网络应用程序的技术。本书的范例都基于最新的JDK10版本。本书内容包括:Java网络编程的基础知识、 套接字编程、非阻塞通信、创建HTTP服务器与客户程序、数据报通信、对象的序列化与反序列化、Java反射机制、RMI框架、JDBC API、JavaMail API、MVC设计模式、安全网络通信、XML数据处理和Web服务。

⑻ 一道关于网络编程及多线程的Java编程题目

So Easy的代码,如你真的想学习java 连这点代码都不愿意写,那你最后什么都学不到。如果只是为了应付考试或者是联系,网络一下Java网络编程,到处都是在这样的代码

建议自己先试下,不成功再到网络上来看下,什么事都想到先问他人是学不到什么的

⑼ 有几个java网络编程基础的选择题 哪位大神给下答案

、Applet为一种特殊的Panel,它可作为Java Applet程序的最外层容器。 ( )
2、Java的源码中定义多少个类,编译后结果就生成多少个以.class为后缀的字节码文 ( )
3、Java程序中,使用关键字new创建新的类对象,使用关键字free回收无用的类对象。 ( )
4、Java有垃圾回收机制,可在指定的时间使用内存回收程序释放内存对象。 ( )
5、构造函数用于创建类的实例对象,返回类型为void,构造函数名应与类名相同。 ( )
6、在异常处理中,假设try中的代码可能产生多种异常则可以对应多个catch语句,若catch中的参数类型有父子关系,此时应该将子类放在前面,父类放在后面。 ( )
7、含有abstract方法的类是抽象类,而抽象类中可以没有abstract方法。 ( )
8、Java的屏幕坐标以像素为单位,容器的左下角被确定为坐标的起点。 ( )
9、静态初始化器是在其所属的类加载内存时由系统自动调用执行。 ( )
10、在Java中可使用赋值号( )对对象赋值,相当于生成了一个各属性与赋值对象相同的新对象。 ( )
11、MVC是Model-View-Controller的简写。"View" 是应用的表示面(由JSP页面产生)。( )
12、MVC是Model-View-Controller的简写。"Controller" 是提供应用的处理过程控制(一般是一个Servlet),通过这种设计模型控制应用逻辑。( )
13、Tomcat是支持JSP引擎的一种服务器软件,可以通过server.xml文件修改服务器的配置信息。( )
14、通过Request.getParameterValues()可以获得某个参数的多个值( )
15、运行JSP需要有JSP引擎,Tomcat是支持JSP的Web服务器的一种。( )
16、Jsp使用的是Java脚本代码,可跨平台运行,运行开销小,具有速度快,可扩展性好及支持分布式处理等特点。 ( )
17、在定义了Bean的属性后,可不创建属性方法。( )
18、if语句是Java的条件分支语句,它控制程序以两条路径执行。( )
19、包是类的容器,用于保证类名空间的一致性。( )
20、JSP中不能使用HTML中的“<!-- -->”注释方式,只能使用JSP的“<!-- -->”的注释方式。
答案:仅供参考
T T F T T T T F T F T T T F F F T T T F

21.Java application中的主类必须包含方法main,以下哪项是main方法的正确参数?( )
A、 String args B、String ar[] C、Char arg D、StringBuffer args[]

22.以下对继承的正确描述是( )。
A、在Java中类只允许单一继承
B、在Java中一个类只能实现一个接口
C、在Java中一个类不能同时继承一个类和实现一个接口
D、在Java中接口只允许单一继承

23.paint()方法中的参数可使用哪种类型? ( )
A、Graphics B、Graphics2D C、String D、Color

24.以下不属于Java基本数据类型的是( )
A、int B、Boolean C、float D、char

25.以下哪项可能包含菜单条( )。
A、Panel B、Frame C、Applet D、Dialog

26.应使用哪种修饰符定义一个类域或类方法?( )
A、static B、package C、private D、public

27.在浏览器中执行applet 程序,以下选项中的哪个方法将被最先执行( )。
A、init() B、start() C、destroy() D、stop()

28.参考以下代码,关于该程序以下哪个说法是正确的?( )
public class Person{
static int arr[] = new int[3];
public static void main(String a[])
{
System.out.println(arr[0]);}
}
A、编译时将产生错误 B、编译时正确,运行时将产生错误
C、输出零 D、输出空

29.下列语句中,哪些关于Java内存回收的说明是正确的? ( )
A、程序员必须创建一个线程来释放内存
B、内存回收程序负责释放无用内存
C、内存回收程序允许程序员直接释放内存
D、内存回收程序可以在指定的时间释放内存对象

30.以下关键字中,可以用来对对象加互斥锁的是?( )
A、transient B、synchronized C、 serialize D、static

31.以下代码段执行后的输出结果为( )
int x=-3; int y=-10;
System.out.println(y%x);
A、 -1 B、2 C、1 D、3

32.有以下程序片段,下列哪个选项不能插入到行1。( )
1.
2.public class Interesting{
3.//do sth
4. }
A、import java.awt.*; B、package mypackage;
C、class OtherClass{ } D、public class MyClass{ }

33.假设有如下两个赋值语句:
a = Integer.parseInt(“5”);
b = Integer.valueOf(“5”).intValue();
下述说法正确的是( )。
A、a是整数类型变量,b是整数类对象。 B、a是整数类对象,b是整数类型变量。
C、a和b都是整数类对象并且值相等。 D、a和b都是整数类型变量并且值相等。

⑽ Java网络编程,高手进




你可以调用 java.net.URLConnection.getContentLength( )。
中文文档:http://shorterlink.com/?WSX10K

import java.net.URL;

class C {
public static void main( String[ ] args ) throws Exception {
URL url = new URL( "http://www.python.org/ftp/python/2.5/python-2.5.msi" );
int size = url.openConnection( ).getContentLength( );
System.out.printf( "%s is only %.1f MB in size.", url, size / Math.pow( 2, 20 ) );
}
}


热点内容
华山算法 发布:2025-01-21 08:44:48 浏览:366
如何在微信上再设置一个密码 发布:2025-01-21 08:44:39 浏览:731
浙江服务器搭建云主机 发布:2025-01-21 08:41:38 浏览:452
光遇和王者荣耀哪个需要的配置高 发布:2025-01-21 08:40:28 浏览:13
如何取消安卓微信表情 发布:2025-01-21 08:08:39 浏览:556
python判断是否为字母 发布:2025-01-21 08:07:55 浏览:609
安卓手机如何注销吃鸡账号并把钱拿回来 发布:2025-01-21 07:56:14 浏览:887
电信的密码是什么意思 发布:2025-01-21 07:30:36 浏览:717
在自己电脑搭建服务器 发布:2025-01-21 07:27:13 浏览:654
怎么配置钉钉代理网络 发布:2025-01-21 07:17:16 浏览:711