当前位置:文档之家› Java程序设计__复习要点

Java程序设计__复习要点

Java程序设计__复习要点
Java程序设计__复习要点

Java程序设计__复习要点

第一讲Java语言概述

1、Java语言的特点:简单、完全面向对象;平台无关性;多线程;直接支持分布式的网络应用,高效的网络编程;可靠性;安全性。

2、运行机制:Java程序是半编译半解释的。Java源程序经编译器编译后产生字节码,Java解释器解释执行字节码。

3、Java程序的开发流程:

(1)安装JDK,设置环境变量;

(2)编写Java源程序:文件以.java作为后缀;

(3)javac将源程序编译成字节码文件(.class文件);

(3)由运行系统解释和执行字节码文件。

4、Java程序的分类:分两类

(1)Java application(Java应用程序):能独立运行的应用程序,有控制台和图形用户界面两种运行方式。main()方法是类首先执行的方法,语句必须写在类的方法中。编写完源代码首先通过javac编译,生成.class字节码文件,通过Java解释器(如java.exe)来运行字节码文件。

(2)Java applet(Java小应用程序):Applet是可以嵌入Web页面的最小应用,不能独立运行,必须嵌入到超文本(*.html)中,由浏览器中的Java解释器解释执行。对于Applet源程序,首先要编译生成字节码文件,再将字节码文件嵌入到超文本中。

简而言之:

application:应用程序,编译:javac 源文件名;运行:java 字节码文件(含主函数)

Applet:嵌入网页中运行的小应用程序,需有相应的html文件;

5、一个完整的Java源程序结构:

package语句:该部分至多只有一句,必须放在源程序的第一句;

import:该部分可以有若干import语句或者没有,必须放在所有的类定义之前;

public classDefinition公共类定义部分,至多只有一个公共类的定义,Java 语言规定该Java源程序的文件名必须与该公共类名完全一致;

classDefinition类定义部分,可以有0个或者多个类定义;interfaceDefinition接口定义部分,可以有0个或者多个接口定义。

第二讲Java语言基础

1、Java的关键字,常量、变量,简单数据类型,运算符、表达式

常量:final

基本数据类型:8中基本数据类型:boolean、char、byte、int、short、long、float、double。其他(数组,类、接口)均为引用或参考类型。

带小数点数如3.13默认为double类型,整数默认int型

class、interface、数组都算引用/参考数据类型

运算符:判等(= =)只能对基本数据类型,equals方法;

短路运算符:&&、||

表达式:强制类型转换、自动类型转换

2、主要的Java语句结构:分支、循环、转移

(1)顺序结构

(2)分支结构:

if(布尔表达式)

{ 语句1;}

[ else

语句2; ]

switch(表达式)

{

case 常量1:语句1 ; [break;]

case 常量2:语句2 ; [break;]

case 常量n:语句n; [break;]

[default: 缺省处理语句; break ;] }

case与break联用,保证多路分支的正确实现。case子句只起标号作用,用来查找匹配的入口并从此处开始执行,对后面的case不再匹配,直接执行,直到遇到break跳出。

(3)循环结构

while(布尔表达式)

{ 语句;}

for(表达式1;表达式2;表达式3)

{ 语句;}

do{ 语句 }

while(布尔表达式A);

(4)转移语句

break:对于无标号的,跳出当前整个语句块;有标号的,跳出标号指的语句块。可用于循环结构也用于分支结构。

continue:只能在循环语句中使用;无标号:用来结束所在循环语句块的本次循环;有标号:跳过标号所指的循环语句所有余下部分语句,直接转入标号标明的循环层次。

注:break使程序跳出当前循环,continue终止当前这一轮的循环,跳过本轮剩余的语句,直接进入当前循环的下一轮。

习题:

1)相应作业、实验

第三讲面向对象程序设计

1、类的定义和使用:class 类名,构造函数,成员变量、成员函数、this;

构造函数,this:指当前类的一个对象,表示对当前类对象的一个引用,在类中调用当前对象(类)中的方法或变量。this 还可以用来引用当前类的构造函数。

2、继承:Object:所有类的父类;函数覆盖、域的隐藏、super、this;

1)子类名extends 父类名;Java只能单继承;函数覆盖、域的隐藏:super:在子类中要引用被隐藏的父类成员时,就需要用关键字super指明。如调用父类中被覆盖的方法,其一般格式为super.方法名([参数表]);用来访问父类中被隐藏的成员变量,其一般格式为:super.成员变量名;调用父类的构造方法,其一般格式为super([参数表])。

2)有继承关系,构造函数的执行顺序:先执行父类的再执行子类的;

3)方法的重载和覆盖,覆盖的原则

一个类中如果有多个同名方法但带有不同的参数列表,成为方法的重载。重载方法的参数列表不同是指参数的数据类型或个数或次序不同。重载方法之间必须以参数列表相区别,不能以返回值区别。

方法的覆盖是指在子类中使用与父类中同名的方法,且方法的参数(个数、类型、排列顺序)和返回类型完全一样,即子类中的方法的代码覆盖掉父类中的方法的代码,实现与父类中的方法的不同功能。

方法覆盖的三个规则:

(1)返回值必须相同

(2)子类方法不可比父类被覆盖的方法更难访问

(3)子类方法不可声明抛出更多的异常

3、接口:关键词:interface,interface 接口名;接口中只有函数说明没有定义;以后用类来实现接口:class 类名implements 接口名,接口可以实现多个,类要实现接口中所有的函数,不然类是抽象类,抽象类不能直接生成对象。

4、涉及到的关键词:abstract、final、static

static:静态成员,整个类对象所共有,而不是像普通成员变量那样,被对象所特有。

类中成员分:实例成员、类成员,知道两种成员的区别

5、类的严谨定义及修饰符

[修饰符] class 类名[extends 父类名] [implements 接口列表]

{ [修饰符] 类型成员变量名1, …, 成员变量名n; // 类体;}

(1)类修饰符分类:

访问修饰符:缺省(默认方式)、public

非访问修饰符:abstract、final ,不能同时修饰一个类

(2)extends : 实现继承

(3)implements : 实现接口

类的访问控制权限:公有和缺省。类中成员的访问控制权限有四种:private、缺省、protected和public公有

6、习题

定义类、继承、实现接口

第四讲数组、字符串和实用类

1、数组都带有长度属性:length,例如,int a[]=new int[10], a.length,Java中二维数组,每一行上的元素个数可以不同;

2、了解Java可重用类结构

3、字符串类:String类

第五讲异常

1、什么是异常:程序执行过程中出现的非正常事件,例如:用户输入错、所需文件找不到、数组下标越界等。而不是编译的语法错。

2、Java将运行错误分为两类:错误(Error)和异常(Exception)。

3、程序对错误和异常的三种处理方式:

(1)程序不能处理错误:对于内存溢出等错误,由系统进行处理,Java程序本身不能对错误进行处理;

(2)程序应避免能预见而不捕获的异常:对于程序能够预见的异常,程序应该考虑周到进行事先处理,尽量避免发生异常;

(3)必须处理的异常:对于程序无法预见的、由特殊环境错误造成的异常,如文件没找到、网络连接中断等,必须进行异常处理,保证程序正常运行,及其可靠性和安全性。

4、异常处理措施:Java中的异常处理机制包括(1)异常类体系,(2)捕捉异常的try语句,(3)抛出自定义异常对象的throw语句,(4)声明方法抛出异常的throws子句,(5)自定义异常类。这些功能不仅能够捕获并处理异常,还能

够主动抛出异常,也能够将异常传递给调用者。

5、两种异常处理机制

1)抛出异常:如果一个方法并不知道如何处理所出现的异常,则可在方法声明时,声明抛出(throws)异常。

2)捕获异常:当Java运行时系统得到一个异常对象时,它将会沿着方法的调用栈逐层回溯,寻找处理这一异常的代码。

6、捕获异常处理过程

try{

可能产生异常的代码

}

catch(异常类型1 变量)

{ 调用者对异常的处理 }

catch(异常类型2 变量)

{ 调用者对异常的处理 }

……

[ finally{ } ]

说明:try块中的语句没有产生异常。在这种情况下,Java首先执行try块中的所有的语句,然后执行finally子句中的代码,最后执行try…catch..finally块后面的语句;

try块中的语句产生了异常,而且此异常在方法内被捕获。在这种情况下,Java首先执行try块中的语句,直到产生异常处,然后跳过此try块中剩下的语句,执行捕获此异常的catch子句的处理代码;然后执行finally子句中的代码;try块中产生了异常,而此异常在方法内没有被捕获。在这种情况下,Java将执行try块中的代码直到产生异常,然后跳过try块中的代码而转去执行finally子句中的代码,最后将异常抛出给方法的调用者。

7、异常处理—抛出异常

throws异常说明总是和方法说明出现在一起。这样,方法说明告诉编译器该方法可能会产生哪些异常,从而要求它的调用者必须考虑处理这些异常。

返回类型方法名(…) [throws 异常类列表]

{ 方法体 }

在程序中使用throw语句来抛出异常:throw 异常类的实例;

8、用户自定义的异常

(1)定义Exception子类,代表异常类型

(2)在适当的时候创建并抛出异常对象。

(3)调用者处理异常

习题:

1)设计一个Java程序,自定义异常类,从命令行(键盘)输入一个字符串,如果该字符串值为“XYZ”,则抛出一个异常信息“This is a XYZ”,如果从命令行输入ABC,则没有抛出异常。(只有XYZ和ABC两种输入)。(实验中题目)

第六讲多线程

1、多线程:程序并发执行,而不是执行完一个任务再执行另一个任务;

2、基于线程的多任务处理环境中,线程是可执行代码的最小单元;

3、Java语言中多线程的两种实现方法——将并发执行的代码写到run()

1)继承T hread类:Thread中有run()方法,该方法中包含了运行时执行的代码。缺省情况下run()方法是空的。可以通过继承Thread类并重写它的run()方法实现用户线程。

class 类名extends Thread{

public void run( )

{ }

}

Thread类中start()函数启动线程

sleep() :让线程休眠,让出CPU的使用

2)实现Runnable接口

class 类名implements Runnable{

public void run( )

{ }

}

使用过程:

(1)自定义类实现Runnable接口

(2)使用Thread类的另一构造函数:Thread(Runnable, String)

用实现了Runnable接口的类的对象中所定义的run()方法, 来覆盖新创建的线程对象的run()方法

(3)使用start()启动线程

3)多线程的两种实现方法及各自的特点(P195)

(1)继承Thread类:声明一个线程类继承Thread类,并且覆盖Thread类的run()方法,说明线程对象所执行的操作。这是方式的优点是,Thread类的子类对象就是线程对象,具有Thread类声明的方法,且具有线程体。缺点是不适用于多重继承。

(2)实现Runnable接口:当一个类已继承一个父类,还要以线程方式运行时,就需要实现Runnable接口。一个实现Runnable接口的对象本身不是线程对象,它只能作为一个线程的目标对象使用,因此,还需要声明一个Thread线程对象。

4、线程对象的生命周期

(1)新建态:new Thread()创建的线程对象处于新建态,系统没有为它分配资源;

(2)运行态:处于新建态达的线程启动后,进入就绪态,再由操作系统调度执行而成为运行态;

(3)阻塞态和等待态:一个运行态的线程因某种原因不能继续运行时,进入阻塞态或等待态。

(4)终止态:线程对象停止运行未被撤销时是终止态。

5、线程对临界资源采用互斥使用方式,关键字:synchronized对需要的方法或代码进行标记;

6、线程间的通信:wait(),notify(),notifyAll()

wait…nofify调度过程是几个线程对同一个对象进行操作,其中某些线程在一定条件下自动挂起(wait) ,等待其他线程在一定条件下通知其继续运行。

典型问题:生产者消费者问题

7、练习题:

1)用多线程的两种实现方法,编写满足要求的应用程序。

第七讲流

1、File类:代表磁盘文件本身信息的类,而不是文件中的内容;可以访问指定文件的所有属性:文件名、文件长度、修改日期等。同时可以利用File类提供的方法来创建文件、删除文件、重命名文件等。

2、文件随机读写:RandomAccessFile类,一般的流中,文件指针只能顺序移动,RandomAccessFile可以任意移动文件指针,seek(long pos)。

3、流:

1)分类:输入流和输出流、字节流和字符流

字节流:InputStream、outputStream

字符流:Reader,Writer

2)流的使用过程:

3)标准输入设备:System.in 字节流,借助Scanner或BufferedReader 实现从键盘的输入

4)FileInputStream/FileOutputStream,实现文件的读取、文件的拷贝;

DataInputStream/DataOutputStream,实现对基本类型数据的读写操作;

ObjectInputStream/ObjectOutputStream,实现对对象的读写操作;

4)字符流:FileReader、FileWriter、InputStreamReader、BufferedReader

4、习题:

1)从键盘输入内容,写入到文件中,直到输入“bye”结束。(实验题目)2)读入一个文件的内容拷贝到另一个文件中。

第八讲图形界面

java.awt包主要由组件类、事件类、布局类、菜单组件类等组成。

1、基本组件、容器

基本组件:不可再分的组件,例:Button、Checkbox、Menu、TextArea等容器组件:用来包含其他组件的,分两类:

1)窗口类Window:Frame、Dialog,

2)面板类Panel,不能独立存在,不能添加菜单栏

组件不能独立地显示,必须放到容器中才能显示出来。

2、布局管理

常用的布局管理器:流布局(FlowLayout)、边界布局(BorderLayout)、网格布局(GridLayout)、卡片布局(CardLayout)。容器可以通过setLayout()函数设置布局方式。

Frame默认为边界布局、panel和Applet默认流布局。

3、事件处理机制:事件、事件类、事件监听器接口

每个事件发生后,都会创建一个Event对象,包括:事件类型、发生的时间、坐标、发生事件的对象等。

按产生事件的物理操作有:MouseEvent、WindowEvent、ActionEvent等;

每一类事件都有相应的事件监听器:*Listener,例如MouseEvent事件的监听器接口为MouseListener;

处理发生在某个GUI组件上的XXXEvent事件的某种情况,其事件处理的通用编写流程:

1)编写一个实现了XXXListener接口的事件监听器类;

2)在XXXListener类中的用于处理该事件情况的方法中,编写处理代码;

3)调用组件的addXXXListener方法,将类XXXListener创建的实例对象注册到GUI组件上。

Adapter类:接口中要实现的方法可能很多,类实现接口的时候所有函数都必须实现,为了简化程序Java提供了一些适配器类:XXXAdapter。

4、习题:

1)编写满足要求的图像界面处理,有相应的事件处理。例:三位数拆分或简单的计算器。

第九讲网络通信

1、Java网络通信的三层次:

1)最高级:网络上下载Applet—由浏览器提供;

2)Applet声音播放和图像显示——由Java开发环境提供;

3)最低层:利用https://www.doczj.com/doc/054110046.html,包中提供的类直接在程序中实现网络通信。

2、通信基础:

TCP/UDP协议,IP地址、端口号,IP地址和端口号构成Socket(套接字)

3、Java提供的网络功能类

1)应用层:URL、URLConnection

2)网络层:InetAddress

3)传输层:

TCP:Socket、ServerSocket;

UDP:DatagramPacket、DatagramSocket、MulticastSocket

使用这些类都需要考虑异常处理

4、TCP Socket通信:ServerSocket、Socket类

1)服务器端:ServerSocket类,Socket类

2)客户端:Socket类

服务器端程序中包含一个提供TCP连接服务的ServerSocket对象和一个参与通信的Socket对象,客户端程序中只包含一个参与通信的Socket对象。服务器端的ServerSocket对象提供TCP连接服务,连接成功后,实际进行通信的是服务器端的Socket对象和客户端的Socket对象。

通信流程:

(1)在服务器端创建一个 ServerSocket对象,指定端口号, ServerSocket 类的accept()方法使服务器处于阻塞状态,等待用户请求;

(2)在客户端创建一个 socket对象,指定主机地址和端口号,连到服务器上;

(3)服务器端接收到客户端的连接请求,建立一条TCP连接,再创建一个Socket对象与客户端的Socekt对象进行通信;

(4)服务器端和客户端分别创建字节输入流和字节输出流,通过字节输入流获得对方发来的数据,通过字节输出流向对方发送数据;

(5)当一方决定结束通信时,向对方发送结束信息;另一方收到结束信息后,双方分别关闭各自的TCP连接;

(6)ServerSocket对象停止等待客户端的连接请求。

Socket通信程序的四个基本步骤:

(1)在客户方和服务器方创建Socket/ServerSocket。

(2)打开连接到Socket的输入/输出流。

(3)利用输入/输出流,按照一定的协议对Socket进行读/写操作。

(4)关闭输入/输出流和Socket。

5、习题

1)实验:简单的客户端/服务器端通信,一问一答;

2)例子:简单的时钟服务器。

《JAVA程序设计》试卷含答案

《JAVA 程序设计》试卷 《JAVA 程序设计》试卷 第1页,共6页 第2页,共6页 Java 程序设计 一、 填空题(要求将答案写在空白处,共11道小题,每空1分,共20分) 1、Java 的三大体系分别是______、______、______。 2、Java 程序的运行环境简称之为______。 3、Java 中的程序代码都必须在一个类中定义,类使用______关键字来定义。 4、布尔常量即布尔类型的两个值,分别是______和______。 5、在Java 中,byte 类型数据占______个字节,short 类型数据占______个字节,int 类型数据占______个字节,long 类型数据占______个字节。 6、若x = 2,则表达式 ( x + + )/3 的值是______。 7、若int a =2; a+=3;执行后,变量a 的值为______。 8、若int []a={12,45,34,46,23}; ,则a[2]= ______。 9、若int a[3][2]={{1,1},{2,2},{3,3}},则a[2][1]= ______。 10、 面向对象的三大特征是______、______和______。 11、 定义在类中的变量被称为______,定义在方法中的变量被称为______ 二、 选择题(将正确答案写在括号内,注意没有在题目中特别说明的均为单选题, 共10题,每题2分,共20分) 1、以下选项中,哪个用来编译源程序 A 、Javadoc B 、Java 运行工具 C 、Java 编译器 D 、Java 打包工具 2、Java 属于以下哪种语言? A 、机器语言 B 、 汇编语言 C 、高级语言 D 、以上都不对 3、下面哪种类型的文件可以在Java 虚拟机中运行? A 、.java B 、.jre C 、class D 、.exe 4、以下选项中,switch 语句判断条件可以接收的数据类型有哪些? (多选) A 、int B 、byte C 、char D 、short 5、假设int x = 2,三元表达式 x>0?x+1:5 的运行结果是以下哪一个? A 、0 B 、2 C 、3 D 、5 6、下面的运算符中,用于执行除法运算是哪个? A 、% B 、\ C 、/ D 、* 7、下列语句哪些属于循环语句?(多选) A 、for 语句 B 、if 语句 C 、while 语句 D 、switch 语句 8、下面哪种写法可以实现访问数组arr 的第1个元素? A 、arr[0] B 、arr(0) C 、arr[1] D 、arr(1) 9、以下哪个选项可以正确创建一个长度为3的一维数组? A 、 new int [2]; B 、 new int[3][]; C 、 new int[3]; D 、 以上答案皆不对 10、请先阅读下面的代码。 int x = 1; int y = 2; if (x % 2 == 0) { y++; } else { y--; } System.out.println("y=" + y); 上面一段程序运行结束时,变量y 的值为下列哪一项? A 、3 B 、2 C 、1 D 、switch 语句 三、程序阅读题(要求将分析结果写在答题纸上,共4道小题,每题5分,共20分) 阅读下面的程序,分析代码是否能够编译通过,如果能编译通过,请列出运行的结果。否则请说明编译失败的原因。 代码一: public class Test01 {

java期末考试试题及答案

1.谈谈final, finally, finalize的区别。 final关键字: a) 如果一个类被声明为final,意味着它不能再派生出新的子类,不能作为父类被继承。因此一个类不能既被声明为abstract的,又被声明为final的。 b) 将变量或方法声明为final,可以保证它们在使用中不被改变。 c) 被声明为final的变量必须在声明时给定初值,而在以后的引用中只能读取,不可修改。 d) 被声明为final的方法也同样只能使用,不能重载。 finally关键字:在异常处理时提供finally 块来执行任何清除操作。如果抛出一个异常,那么相匹配的catch 子句就会执行,然后控制就会进入finally 块。 finalize:方法名,不是关键字。Java技术允许使用finalize() 方法在垃圾收集器将对象从内存中清除出去之前做必要的清理工作。这个方法是由垃圾收集器在确定这个对象没有被引用时对这个对象调用的。它是在Object 类中定义的,因此所有的类都继承了它。子类覆盖finalize() 方法以整理系统资源或者执行其他清理工作。finalize()方法是在垃圾收集器删除对象之前对这个对象调用的。 2.GC是什么? 为什么要有GC? GC是垃圾收集器。Java 程序员不用担心内存管理,因为垃圾收集器会自动进行管理。要请求垃圾收集,可以调用下面的方法之一: System.gc() Runtime.getRuntime().gc() 3.Math.round(11.5)等於多少? Math.round(-11.5)等於多少? 写程序Math.round(11.5) = 12 Math.round(-11.5) = -11 4.给我一个你最常见到的runtime exception ArithmeticException, ArrayStoreException, BufferOverflowException, BufferUnderflowException, CannotRedoException, CannotUndoException, ClassCastException, CMMException, ConcurrentModificationException, DOMException, EmptyStackException, IllegalArgumentException, IllegalMonitorStateException, IllegalPathStateException, IllegalStateException, ImagingOpException, IndexOutOfBoundsException, MissingResourceException, NegativeArraySizeException, NoSuchElementException, NullPointerException, ProfileDataException, ProviderException, RasterFormatException, SecurityException, SystemException, UndeclaredThrowableException, UnmodifiableSetException, UnsupportedOperationException

JAVA程序设计期末考试题(多套含答案)

《JA V A程序设计》期末考试试题(五) 一、单选题 1、当某一线程正处于休眠状态,而另一个线程用Thread 类中的interrupt() 方法中断它时,抛出的异常类型是()。 A) IOException B) RuntimeException C) InterruptedException D) ClassNotFoundException 2、下面的程序段的功能是( )。 File file1=new File("d:\\xxx\\yyy\\zzz"); file1.mkdirs(); A)在当前目录下生成子目录:\xxx\yyy\zzz B)生成目录:e:\xxx\yyy\zzz C)在当前目录下生成文件xxx.yyy.zzz D)以上说法都不对 3、应用程序的main方法中有以下语句,则输出的结果是( )。 String s = "xxxxxxxxxxxxxxx#123#456#zzzzz"; int n = s.indexOf("#"); int k = s.indexOf("#", n+1); String s2 = s.substring(n+1, k); System.out.println(s2); A) 123456 B) 123 C) xxxxxxxxxxxxxxx D) zzzzz 4、关于下面的程序Test.java说法正确的是( )。 public class Test { String x="1"; int y; public static void main(String args[]) { int z=2; System.out.println(x+y+z); } } A)3 B)102 C) 12 D)程序有编译错误 5、应用程序的main方法中有以下语句,则输出的结果是( )。

Java程序设计期末考试试题

Java程序设计期末考试试题、试卷、习题A卷 一、选择题。本题共20小题,每题2分,满分40 分。 1、在浏览器中执行applet 程序,以下选项中的哪个方法将被最先执行……… () A)init() B)start() C)destroy() D)stop() 2、有以下方法的定义,请选择该方法的返回类型() ReturnType method(byte x, double y) { return (short)x/y*2; } A)byte B)short C)int D)double 3、以下哪项可能包含菜单条()。 A)Panel B)Frame C)Applet D)Dialog 4、Java application中的主类需包含main方法,main方法的返回类型是什么?()A)int B)float C)double D)void 5、Java application中的主类需包含main方法,以下哪项是main方法的正确形参?( ) A)String args B)String ar[] C)Char arg D)StringBuffer args[] 6、编译Java Application 源程序文件将产生相应的字节码文件,这些字节码文件的扩展名为( )。 A). java B) .class C) . html D) .exe 7、设int型变量x = 1 , y = 2 , z = 3,则表达式y+=z--/x++ 的值是( )。 A)3 B)3. 5 C)4 D)5 8、不允许作为类及类成员的访问控制符的是( )。 A)public B)private C)static D)protected 9、为AB类的一个无形式参数无返回值的方法method书写方法头,使得使用类名AB作为前缀就可以调用它,该方法头的形式为( )。 A)static void method( ) B)public void method( ) C)final void method( ) D)abstract void method( ) 10、以下哪一个不是JAVA的标准数据流( )。 A)标准输出数据流B)标准输入数据流C)标准错误数据流D)标准运算数据流 11.设有下面两个赋值语句:( ) a = Integer.parseInt(“123”); b = Integer.valueOf(“123”).intValue(); 下述说法正确的是()。 A)、a是整数类型变量,b是整数类对象。B)、a是整数类对象,b是整数类型变量。C)、a和b都是整数类对象并且值相等。D)、a和b都是整数类型变量并且值相等。 12、下列代表十六进制整数的是( ) A)0123 B)1900 C)fa00 D)0xa2

《JAVA语言程序设计》期末考试试题及答案

《JA V A语言程序设计》期末考试试题及答案3 一、单项选择题 1、如下哪个是Java中的标识符() A、public B、super C、3number D、width 2、如下哪个是Java中的标识符( ) A、fieldname B、super C、3number D、#number 3、已知如下定义:String s = "story"; 下面哪个语句不是合法的( ) A、s += "books"; B、s = s + 100; C、int len = s.length; D、String t = s + “abc”; 4、如下哪个是Java中有效的关键字() A、name B、hello C、false D、good 5、下面的代码段执行之后count的值是什么( ) int count = 1; for (int i = 1; i <= 5; i++) { count += i; } System.out.println(count); A、5 B、1 C、15 D、16 6、定义一个类,必须使用的关键字是( ) A、public B、class C、interface D、static 7、定义一个接口必须使用的关键字是() A、public B、class C、interface D、static 8、如果容器组件p的布局是BorderLayout,则在p的下边中添加一个按钮b,应该使用的语句是() A、p.add(b); B、p.add(b,"North"); C、p.add(b,"South"); D、b.add(p,"North"); 9、声明并创建一个按钮对象b,应该使用的语句是() A、Button b=new Button(); B、button b=new button();

大学java期末试卷2份(含答案)

Java大学考试试卷 一、选择题(每题2分,共30分) 1、Java中main()函数的值是。 A、 String B、int C、char D、void 2、如下字串是Java中的标识符。 A、 fieldname B、super C、3number D、#number 3、下面的代码段中,执行之后i 和j 的值是。 int i = 1; int j; j = i++; A、 1, 1 B、1, 2 C、2, 1 D、2, 2 4、已知表达式int m[] = {0, 1, 2, 3, 4, 5, 6 };下面表达式的值与数组下标量总数相等。 A、 m.length() B、m.length C、m.length()+1 D、m.length+1 5、当浏览器返回到新URL的包含applet 的页面时调用以下函数。 A、 init() B、start() C、stop() D、destroy() 6、以下方法用于定义线程的执行体。 A、 start() B、init() C、run() D、main() 7、如果类中的成员变量可以被同一包访问,则使用如下约束符。 A、 private B、public C、protected D、final 8、以下约束符可用于定义成员常量。 A、 static B、final C、abstract D、No modifier can be used 9、下面方法与applet的显示无关。 A、 update() B、draw() C、repaint() D、paint() 10、请问如下方法可以将MenuBar加入Frame中。 A、 setMenu() B、setMenuBar() C、add() D、addMenuBar() 11、下面不是Java中的容器。 A、 ScrollPane B、Canvas C、Dialog D、Applet 12、下面的程序段创建了BufferedReader类的对象in,以便读取本机d盘my文件夹下的文件1.txt。File 构造函数中正确的路径和文件名的表示是。 File f=new File(填代码处); file=new FileReader(f); in=new BufferedReader(file); A) "1.txt" B) "d:\\my\\1" C) "d:\\my\\1.txt" D) "d:\ my\1.txt" 13、有整型数组:int[] x={12,35,8,7,2};,则调用方法Arrays.sort(x)后,数组x中的元素值依次是。A) 2 7 8 12 35 B) 12 35 8 7 2 C) 35 12 8 7 2 D) 8 7 12 35 2 14、下面的程序段执行后输出的结果是。 StringBuffer buf=new StringBuffer("Beijing2008"); buf.insert(7,"@"); System.out.println(buf.toString()); A) Beijing@2008B) @Beijing2008 C) Beijing2008@ D) Beijing#2008 15、.下面表达式可用得到x和y的最大值。 A) x>y?y:x B) xy?(x+y):(x-y) D) x==y?y:x; 二、多选题(每题至少有一个正确答案,多选少选都不给分,每题2分,共10分) 16、下面赋值语句是合法的。 A、float a = 2.0 B、double b = 2.0 C、int c = 2 D、long d = 2 17、下面语句是创建数组的正确语句。 A、 float f[][] = new float[6][6]; B、float []f[] = new float[6][6]; C、float f[][] = new float[][6]; D、float [][]f = new float[6][6]; 18、Java中如下约束符是正确的。 A、 private B、public C、protected D、protect 19. 下面事件监听器在Java中有事件适配器。 A、 MouseListener B、KeyListener C、ActionListener D、WindowListener 20、已知如下的命令执行 java MyTest a b c,语句是正确的。 A、 args[0] = "MyTest a b c" B、args[0] = "MyTest" C、args[0] = "a" D、args[1]= 'b' 填空题(每空格2分,共20分) 1. 创建类的对象时,使用运算符__________给对象分配内存空间。 2. 定义类的构造方法不能有返回值类型,其名称与____ _名相同。

JAVA程序设计试卷一

浙江工商大学2006/2007学年第一学期考试试卷课程名称:Java程序设计考试方式:闭卷完成时限:120分钟班级名称:学号:姓名:题号一二三四五六七八九十总分分值 得分 阅卷人 一、选择题(每题2分,共30分) 1、Java程序的执行过程中用到一套JDK工具,其中java.exe是指B。 A.Java文档生成器 B.Java解释器 C.Java编译器 D.Java类分解器 2、Java语言中,下列标识符错误的是D。 A.—sys1 B.&—m C.I D.40name 3、下列语句执行后,变量a、c的值分别是B。 int x=182; int a,c; c=x/100; a=x%10; A)1,2B)2,1C) 1.82,2D)100,82 4、应用程序的main方法中有以下语句,则输出的结果是A。 String s1="0.5",s2="12"; double x=Double.parseDouble(s1); int y=Integer.parseInt(s2); System.out.println(x+y); A)12.5B)120.5C)12D)“12.5” 5、下列程序段执行后的结果是A。 String s=new String("abcdefg");

for(int i=0;i

Java期末考试试卷1

信息学院2006—2007学年第二学期期末考试试题A 课程名称:Java 语言程序设计主讲:年级: 班级姓名学号 题号一二三四五合计 分数 一、选择(每题1分,共20分) 1.有一个名为MyClass的public类,想成功编译需满足以下哪个条件?() A. MyClass类中必须定义一个正确的main()方法。 B. MyClass必须定义在MyClass.java源文件中。 C. MyClass类必须定义在MyClass包中。 D. MyClass类必须被导入。 2.以下哪些修饰符不能用于顶层类?( ) A. public B. private C. abstract D. final 3.以下哪个是java中合法的关键字?( ) A. array B. Boolean C. protect D. super 4.以下哪些是合法的标识符?( ) A.%abcd B. 2abcd C. package D. _a_long_name 5.在Java中,一个类可同时定义许多同名的方法,这些方法的形式参数的个数、类型或顺序各不相同。这种面向对象程序的特性称为. () A、隐藏 B、覆盖 C、重载 D、Java不支持此特性 6.有以下代码,请问该程序的运行结果是什么?( ) class Example { public static void main(String args[]){ boolean b=true; System.out.println(b); } } A. 打印输出true B. 打印输出1 C.编译错误 D. 无内容输出 7.以下哪些是基本数据类型?( ) A.int B. String C. Integer D. Float 8. 给出以下代码,请选择正确的选项?( ) class Example{ public static void main(String[] args){ char a=”\u1234”; } } A. 代码编译成功 B. 代码编译成功,但有警告 C. 代码编译失败 9.以下哪个语句用于声明一个二维数组?( ) A. int[5][5] a=new int[][]; B. int a=new int[5,5] C. int[][] a=new int[5][5]; D. int[][] a=new [5]int[5]; 10.给出以下代码,请问该程序的运行结果是什么?()

大学java期末考试试题和标准答案

《Java程序设计基础》期终考试试卷(模拟) (闭卷) 一、简单编程题(共50分) 在考试文件夹中新建一个应用程序proj1(应用程序地文件夹名称为proj1),按照以下要求编写程序代码. 1. 在程序中定义Person类,为该类编写如下字段、构造器、访问器、修改器和相应地其他方法.(20分) (1)在Person类中定义两个字段: 私有访问权限,类型为String地name字段; 私有访问权限,类型为int地age字段. (2)在Person类中定义构造器 构造器有两个参数,第一个参数地类型是String,名字为name.第二个地类型是int,名字是age.第一个参数地值赋给字段name,第二个参数地值赋给字段age. (3)为Person类地两个字段分别编写访问器方法,方法名称分别为getName和getAge.getName方法返回类型为String地name字段地值;getAge方法返回类型为int地age字段地值. (4)为Person类地两个字段分别编写修改器方法,方法名称分别为setName和setAge.setName方法有一个String类型地参数,方法中用该参数来设置字段name地值;setAge方法有一个int类型地参数,方法中用该参数来设置字段age地值,并且保证age 字段地值不能为负数,如果要将age设置为负数则给出错误提示. (5)为Person类写一个叫做toString地方法,该方法不需要参数,有返回值.它返回一个字符串,字符串中包含name字段和age字段地值,如果name字段地值是“Helen”,age字段地值是20,则返回字符串:“Name:Helen. Age:20”. 2. 在程序中定义Student类,Student类继承Person类.(10分) (1)在Student类中除了继承其超类Person地name字段和age字段外,它还有自己地字段String类型地school,该字段地访问权限为私有. (2)Student类地构造器有三个参数,第一个参数为name,String类型;第二个参数为age,int类型;第三个参数为school,String类型,这三个参数地值分别赋给三个字段name、age和school. (3)在Student类中重写其超类Person地toString方法,要求该方法返回地字符串不仅包含超类Person中地name字段和age字段地值,而且包含子类Student中地school 字段地值.如果name字段地值是“Helen”,age字段地值是20,school字段地值是“山西大学商务学院”,则返回地字符串为“School:山西大学商务学院Name:Helen. Age:20”. 3. 在程序中定义Test类,在Test类中定义一个main方法,在main方法中实现如下操作:(10分) (1)创建一个Person类地对象,它地name为“John”,age为18,对象名为person1; (2)创建一个Student类地对象,它地name为“Helen”,age为18,school为“MIT”,对象名为stuent1; (3)分别输出这两个对象地相关信息(调用它们地toString方法). 4. 分别为Person类和Student类编写文档注释,并生成应用程序地类文档.要求如下:(10分) (1)类地文档注释,包括类名、类地作者及版本号,作者地名字用考生地姓名标注,版本号使用考试地日期; (2)构造器和各个方法地文档注释,包括方法地名称、构造器和方法地功能说明,要求标注构造器和方法中地参数及返回值,并说明参数地类型、名称和返回值地类型. (3)文档注释完成后要使用BlueJ地JavaDOC工具生成应用程序地类文档. 二、代码改错(共20分)

JAVA语言程序设计期末考试试题及答案

J A V A语言程序设计期末考试试题及答案 TTA standardization office【TTA 5AB- TTAK 08- TTA 2C】

J A V A语言程序设计考试试题及部分答案 一、单选题:(每题1分)下列各题A)、B)、C)、D)四个选项中,只有一个选项是正确的,请将正确选项的标记写在题干后的括号内。 1.下列语句序列执行后,k 的值是( B )。 int m=3, n=6, k=0; while( (m++) < ( -- n) ) ++k; A) 0 B) 1 C) 2 D) 3 2.设 i、j 为int型变量名,a 为int型数组名,以下选项中,正确的赋值语句是( B )。 A) i = i + 2 B) a[0] = 7; C) i++ - --j; D) a(0) = 66; 3.Java语言的类间的继承关系是( B )。 A) 多重的 B) 单重的 C) 线程的 D) 不能继承 4.设有定义 int i = 6 ;,则执行以下语句后,i 的值为( C )。 i += i - 1; A) 10 B) 121 C) 11 D) 100 5.下列选项中,用于在定义子类时声明父类名的关键字是( C )。 A)interface B) package C) extends D) class 6.若已定义 byte[ ] x= {11,22,33,-66} ; 其中0≤k≤3,则对x数组元素错误的引用是( C )。 A) x[5-3] B) x[k] C) x[k+5] D) x[0]

7.下列语句序列执行后,ch1 的值是( B )。 char ch1='A',ch2='W'; if(ch1 + 2 < ch2 ) ++ch1; A) 'A' B) 'B' C) 'C' D) B 8.下列语句序列执行后,i 的值是( D )。 int i=8, j=16; if( i-1 > j ) i--; else j--; A) 15 B) 16 C) 7 D) 8 9.下列语句序列执行后,k 的值是( C )。 int i=10, j=18, k=30; switch( j - i ) { case 8 : k++; case 9 : k+=2; case 10: k+=3; default : k/=j; } A) 31 B) 32 C) 2 D) 33 10.下面语句执行后,i 的值是( B )。 for( int i=0, j=1; j < 5; j+=3 ) i=i+j; A) 4 B) 5 C) 6 D) 7 11.设有定义 float x=, y=, z=;则以下的表达式中,值为true的是( B )。 A) x > y || x > z B) x != y

Java web期末考试题

第1页(共7页) 天津师范大学期末考核 2015—2016 学年第2学期 期末考核试卷 科目:Java Web 应用开发 学院:计信学院 专业:计算机科学 一、 单选题:(每小题2分,共10分) 1. 下列语句属于声明语句的是( A )。 A .<%! Int a = 4;%> B.<% int a=4;%> C .<%--int a=4-- %> D. <%@ int a=4%> 得分 2. 一个servlet 的生命周期不包括( B )方法? A .init( )方法 B. invalidate( )方法 C .service( )方法 D .destroy( )方法 得分 3. Application 对象的作用域是( B )。 A . 一次会话 B. 整个应用程序 C . 一次请求 D . 整个页面 得分 4. 下面对servlet 中重定向说法描述错误的是( D )。 A .使用的是HttpServletResponse 接口的sendRedirect()方法 B. 源组件的响应结果不会发送给客户端 C .sendRedirect()方法后的代码仍会执行 D .源组件和目标组件共享ServletRequest 对象

第2页(第7页) 得分 5. 有一个JavaBean 组件,类名为Student ,此JavaBean 组件的获得访问方法是getTotalScore,其功能是获得某个学生几门功课的总分,返回值保留一位小数,则以下关于getTotalScore 的声明正确的是( B )。 A .public int getTotalScore() B. public float getTotalScore() C .protected int getTotalScore() D .protected float getTotalScore() 得分 2. 3. Sevlet 过滤器核心对象放置在javax.servlet 包中,其名称为 4.

《JAVA语言程序设计》期末考试试题及答案

《JA V A语言程序设计》期末考试试题及答案 (应考必备题库) 一、单选择题 1、编译Java Application 源程序文件将产生相应的字节码文件,这些字节码文件的扩展名为( )。 A. java B. .class C. html D. .exe 2、设x = 1 , y = 2 , z = 3,则表达式y+=z--/++x 的值是( )。 A. 3 B. 3. 5 C. 4 D. 5 3、不允许作为类及类成员的访问控制符的是( )。 A. public B. private C. static D. protected 4、为AB类的一个无形式参数无返回值的方法method书写方法头,使得使用类名AB作为前缀就可以调用它,该方法头的形式为( )。 A. static void method( ) B. public void method( ) C. final void method( ) D. abstract void method( ) 二、填空题 1、开发与运行Java程序需要经过的三个主要步骤为编辑源程序、 编译生成字节码和解释运行字节码。 2、在Java的基本数据类型中,char型采用Unicode编码方案,每个Unicode码占 用2字节内存空间,这样,无论是中文字符还是英文字符,都是占 用2字节内存空间。 3、设x = 2 ,则表达式( x + + )/3 的值是0 。 4、若x = 5,y = 10,则x < y和x >= y的逻辑值分别为true和false。 5、抽象(abstract) 方法是一种仅有方法头,没有具体方法体和操作实现的方法,该方法必须在抽象类之中定义。最终(final)方法是不能被当前类的子类重新定义的方法。 6、创建一个名为MyPackage 的包的语句是package MyPackage ; , 该语句应该放在程序的位置为:应该在程序第一句。 7、设有数组定义:int MyIntArray[ ] = { 10 , 20 , 30 , 40 , 50 , 60 , 70}; 则执行以下几个语句后的输出结果是120。

Java程序设计期末考试题

Java程序设计期末考试题 一、选择题 下列说法中,不正确的是( A ) A) 一个java源程序编译通过后,得到的结果文件数也只有一个。 B) 一个java源程序经过编译后,得到的文件的扩展名一定是.class。 C) 一个java源程序只能有一个public class类定义,且源文件的名字与public class的类名相同,扩展名必须是.java。 D) 一个java源程序可以包含多个class类。 请问,以下哪些描述是正确的? 请选择所有正确答案: (1)如果package语句存在,则必须出现在源文件的非空白首行。(2)如果import语句存在,则必须出现在源文件的非空白首行。(3)如果main()方法存在,则必须出现在源文件的非空白首行。(4)如果在源文件中声明了一个public接口,则其名称必须和源文件名一致。 请问,以下哪些是Java中的合法标识符? 请选择所有正确答案: (1)my-id (2)my_id

(3)101ids (4)id101 请问,以下哪些是合法的标识符? 请选择所有正确答案: (1)%abcd (2)$abcd (3)1abcd (4)package (5)_a_long_name 以下哪个不是Java的关键字?() A、FALSE B、const C、this D、void 以下哪个不是Java的关键字?() A、TRUE B、goto C、this D、void Java的字符类型采用的是Unicode编码方案,每个Unicode码占用()个比特位。 A、8 B、16

C、32 D、64 请问一下哪些修饰符用于声明一个常量?请选择一个正确答案:static final abstract public 给出以下代码,该程序的运行结果是什么? public class Example{ final int x=0; Example(){ x=1; } final int aMethod(){ return x; } } 请选择所有正确答案: 代码编译错误,因为非final类中存在final方法。 代码编译成功。

Java程序设计(1)试卷(A)

学院 数计 卷教师 叶锋 系主任签名 制卷份数 专业 电信、通信、光电 班级编号 B07073011、07073021、07073031 江汉大学2009——2010学年第 1学期 考 试 试 卷 课程编号: 课程名称: JAVA 程序设计(1) 试卷类型: 卷 考试时间:120 分钟 一、单项选择题(在每小题的四个备选答案中,选出一个正确的答案,并将其号码填在题干后的括号内,每小题2分,共30分) 1、 一个Java 程序运行从上到下的环境次序是( C )。 A. 操作系统、Java 程序、JRE/JVM 、硬件 B. JRE/JVM 、Java 程序、硬件、操作系统 C. Java 程序、JRE/JVM 、操作系统、硬件 D. Java 程序、操作系统、JRE/JVM 、硬件 2、下面哪些是合法的标识符。(A ) A. persons B. 12345 C. *point D. this 3、以下说法正确的是( B )。 A.一个可直接运行的Java 源文件中可以有多个public 类,其中必须有一个和文件同名 B.一个可直接运行的Java 源文件中可以没有public 类 C.一个可直接运行的Java 源文件中只能有一个且和文件同名的public 类。 D. 一个可直接运行的Java 源文件中可以有多个public 类,且可以没有和文件同名的类。 4、在java 中定义常量的正确语法为( C )。 A . int value=20; B. const int V ALUE=20; C. final int V ALUE=20; D. int V ALUE=20; 5、下面代码的运行输出结果是( A )。 public class example { public static void main(String args[]) { int x=0; if (x>0) x=1; switch (x)

java期末考试试题(含答案)

模拟B卷 考试说明: 1.使用Eclipse编写程序。项目名称为:班级_姓名_学号_卷号。注意:卷号为A或B 2.在项目文件夹下新建一个文本文件,文件名为:答案.txt 3.将编程题外的所有题目写在文本文件中,答案要标明题号。 注意:考试期间遇到死机等问题,需要请示老师,切勿自行解决。否则后果自负。 一、单项选择题:共20题,每小题1分,满分20分 1、下列选项中,不属于Java语言特点的一项是。( D ) A、安全性 B、分布式 C、面向对象 D、编译执行 2、Java语言和c++语言相比,哪一项是Java有的,而c++没有?( C ) A、面向对象 B、有类库 C、跨平台 D、动态链接 3、如下哪个不是Java中有效的变量名。( A ) A、 if B、hello C、name D、good 4、下列不属于Java保留字的一个是( B )。 A、else B、Unicode C、if D、static 5、现有2个char,类型的变量al=’a’、a2=2,当执行al=(char)(al+a2);语句之后,al的值应 该是( C )。 A、’a’ B、12 C、’c’ D、语句在编译时出错 6、下列关于int类型和long类型的说法中,正确的一个是( A )。 A、int类型可以自动转换为long类型 B、long类型可以自动转换为int类型 C、long类型占的存储空间比int类型的小 D、long类型和int类型数据能表示整数的范围一样 7、下列类的定义中,错误的是( B )。 A、class y{ .... } B、public x extends y{ .... } C、public class x extends y{ .... } D、class x extends y implements y1{ .... } 8、执行语句int i = 1, j = ++i; 后i与j的值分别为( D )。 A、1与1 B、2与1 C、1与2 D、2与2 9、为了区分重载多态中同名的不同方法,要求( C )。 A、调用时用类名或对象名做前缀 B、返回值类型不同 C、形式参数个数或者类型不同 D、形式参数名称不同 10、定义类头时能使用的修饰符是( C )。 A、private B、static C、protected D、abstract 11、如果在编译Java程序时,编译结果报告说找不到要编译的代码,错误是( D )

JAVA语言程序设计期末考试试题及答案

1234124JAVA语言程序设计考试试题及部分答案 一、单选题:(每题1分)下列各题A)、B)、C)、D)四个选项中,只有一个选项是正确的,请将正确选项的标记写在题干后的括号内。 1.下列语句序列执行后,k 的值是( B ) 。 int m=3, n=6, k=0; while( (m++) < ( -- n) ) ++k; A)0 B) 1 C) 2 D) 3 2.设i 、j 为int 型变量名, a 为int 型数组名,以下选项中,正确的赋值语句是( B ) 。 A)i = i + 2 B) a[0] = 7; C) i++ - --j; D) a(0) = 66; 3.Java语言的类间的继承关系是(B )。 A)多重的B) 单重的C) 线程的D) 不能继承 4.设有定义int i = 6 ; ,则执行以下语句后,i 的值为( C ) 。 i += i - 1; A) 10 B) 121 C) 11 D) 100 5.下列选项中,用于在定义子类时声明父类名的关键字是( C ) 。 A) interface B) package C) extends D) class 6.若已定义byte[ ] x= {11,22,33,-66} ; 其中O W k<3,则对x数组元素错误的引用是(C )。 A) x[5-3] B) x[k] C) x[k+5] D) x[0] 7.下列语句序列执行后, ch1 的值是( B ) 。 char ch1='A',ch2='W'; if(ch1 + 2 < ch2 ) ++ch1; A) 'A' B) 'B' C) 'C' D) B

相关主题
文本预览
相关文档 最新文档