JAVA语言与WWW技术复习题doc.docx

上传人:b****4 文档编号:5028775 上传时间:2022-12-12 格式:DOCX 页数:21 大小:20.93KB
下载 相关 举报
JAVA语言与WWW技术复习题doc.docx_第1页
第1页 / 共21页
JAVA语言与WWW技术复习题doc.docx_第2页
第2页 / 共21页
JAVA语言与WWW技术复习题doc.docx_第3页
第3页 / 共21页
JAVA语言与WWW技术复习题doc.docx_第4页
第4页 / 共21页
JAVA语言与WWW技术复习题doc.docx_第5页
第5页 / 共21页
点击查看更多>>
下载资源
资源描述

JAVA语言与WWW技术复习题doc.docx

《JAVA语言与WWW技术复习题doc.docx》由会员分享,可在线阅读,更多相关《JAVA语言与WWW技术复习题doc.docx(21页珍藏版)》请在冰豆网上搜索。

JAVA语言与WWW技术复习题doc.docx

JAVA语言与WWW技术复习题doc

 

2016-2017年第二学期JAVA语言与WWW技术复习题

 

一、填空题

 

1.Java的三大体系分别是___JavaEE___、____JavaSE__、___JavaME__。

 

2.Java中的变量可分为两种数据类型,分别是___基本数据类型_和_引用数据类型__

___。

 

3.在非静态成员方法中,可以使用关键字__This____访问类的其它非静态成员。

 

4.被static关键字修饰的成员变量被称为_静态变量__,它可以被该类所有的实例对象共享。

 

5.编译Java程序需要使用__javac____命令。

 

6.Java中的程序代码都必须在一个类中定义,类使用___class___关键字来定义。

 

7.若int[]a={12,45,34,46,23};,则a[2]=__34____。

 

8.面向对象的三大特征是__封装、__继承__和多态_。

 

9.定义在类中的变量被称为___成员变量_,定义在方法中的变量被称为__局部变量_。

 

10.异常的捕获通常由

 

try

 

、catch

 

两部分组成,

 

___try

 

___

 

代码块用来存放可能发生异

常,__catch

__代码块用来处理产生的异常。

 

11.String类中用于返回字符串字符个数的方法是___length()__。

 

12.JDK中提供了一系列可以存储任意对象的类,统称为_集合___。

 

13.在Java中,能实现线程间通信的流是_管道流___。

 

14.是__PrintStreamsetOut(PrintStreamout)

 

__类的对象,称为标准输出流,调用

__方法可以实现标准输出流的重定向。

 

System

 

类的_

 

15.在程序开发中,要想将一个包中的类导入到当前程序中,可以使用_import__关键

 

字。

 

16.

System类中所提供的属性和方法都是

_

静态

___

的,想要引用这些属性和方

法,直接使用

System类调用即可。

17.

Collection

有两个子接口分别是

List

和Set,List集合的特点是

有序、可重

,Set集合的特点是

无序、不可重复

18.

InputStreamReader

类是用于将_字节流___转换为_字符流___。

19.

在Java中,byte

类型数据占___1___个字节,short

类型数据占__2____个字节,int

类型数据占___4___个字节,long类型数据占__8____个字节。

20.

当一个对象被当成垃圾从内存中释放时,它的

_finalize()___

__方法会被自动调用。

二、选择题

 

1.下面哪种类型的文件可以在Java虚拟机中运行?

 

A、.javaB、.jreC、.exeD、.class

 

2.以下关于变量的说法错误的是?

 

A、变量名必须是一个有效的标识符

 

B、变量在定义时可以没有初始值

 

C、变量一旦被定义,在程序中的任何位置都可以被访问

 

D、在程序中,可以将一个byte类型的值赋给一个int类型的变量,不需要特殊声明

 

3.请先阅读下面的代码。

intx=1;

 

inty=2;

 

if(x%2==0){

 

y++;

 

}else{

 

y--;

 

}

 

"y="+y);

 

上面一段程序运行结束时,变量y的值为下列哪一项?

 

A、1B、2C、3D、switch语句

 

4.在以下什么情况下,构造方法会被调用?

 

A、类定义时B、创建对象时

 

C、调用对象方法时D、使用对象的变量时

 

5.请先阅读下面的代码

 

publicclassTest{

 

publicTest(){

 

"构造方法一被调用了");

 

}

 

publicTest(intx){

 

this();

 

"构造方法二被调用了");

 

}

 

publicTest(booleanb){

 

this

(1);

 

"构造方法三被调用了");

 

}

 

publicstaticvoidmain(String[]args){

 

Testtest=newTest(true);

 

}

 

}

 

上面程序的运行结果为下列哪一项?

 

A、构造方法一被调用了B、构造方法二被调用了

 

C、构造方法三被调用了D、以上三个选项之和

 

6.类中的一个成员方法被下面哪个修饰符修饰,该方法只能在本类被访问?

 

A、publicB、protected

 

C、privateD、default

 

7.下面的程序段执行后,输出的结果是以下哪个选项?

 

StringBufferbuf=newStringBuffer("Beijing2008");

 

(7,"@");

 

、Beijing@2008B、@Beijing2008

 

C、Beijing2008@D、Beijing#2008

 

8.Java语言中,集合类都位于哪个包中?

 

A、B、

 

C、D、

 

9.以下选项中,哪个是File类delete()方法返回值的类型?

 

A、booleanB、int

 

C、StringD、Integer

 

10.以下对File类的publicbooleaisFile()方法的描述,哪个是正确的?

 

A、判断该File对象所对应的是否是文件。

 

B、判断该File对象所对应的是否是目录。

 

C、返回文件的最后修改时间。

 

D、在当前目录下生成指定的目录。

 

11.Java属于以下哪种语言?

 

A、机器语言B、汇编语言C、高级语言D、以上都不对

 

12.假设intx=2,三元表达式x>0?

x+1:

5的运行结果是以下哪一个?

 

A、0B、2C、3D、5

 

13.在类的继承关系中,需要遵循以下哪个继承原则?

 

A、多重B、单一C、双重D、不能继承

 

14.编译运行下面的程序,结果是什么?

 

publicclassA{

 

publicstaticvoidmain(String[]args){

 

Bb=newB();

 

();

 

}

 

voidtest(){

 

"A");

 

}

 

}

 

classBextendsA{

 

voidtest(){

 

();

 

"B");

 

}

 

}

 

A、产生编译错误B、代码可以编译运行,并输出结果AB

 

C、代码可以编译运行,但没有输出D、编译没有错误,但会产生运行时异常

 

15.以下都是Math类的常用方法,其中用于计算绝对值的方法是哪个?

 

A、ceil()B、floor()C、abs()D、random()

 

16.阅读下面的程序:

 

publicclasstest{

 

publicstaticvoidmain(Stringargs[]){

 

inti;

 

floatf=;

 

doubled=;

 

i=((int)(f))*((int)(d));

 

}

 

}

 

程序执行后,运行结果为以下哪个选项?

 

A、9B、5C、6D、

 

17.使用Iterator时,判断是否存在下一个元素可以使用以下哪个方法?

 

A、next()B、hash()C、hasPrevious()D、hasNext()

 

18.类的定义必须包含在以下哪种符号之间?

 

A、方括号[]B、花括号{}C、双引号“”D、圆括号()

 

19.要产生[20,999]之间的随机整数可以使用以下哪个表达式?

 

A.(int)(20+()*97)

 

B.20+(int)()*980)

 

C.(int)()*999

 

D.20+(int)()*980

 

20.先阅读下面的程序片段:

 

Stringstr1=newString("java");

 

Stringstr2=newString("java");

 

StringBufferstr3=newStringBuffer("java");

 

对于上述定义的变量,以下表达式的值为true的是哪个?

 

A、str1==str2;B、(str2);C、str1==str3;D、以上都不对

 

21.在程序开发中,经常会使用以下哪个类来存储程序中所需的配置?

 

A、HashMapB、TreeSetC、PropertiesD、TreeMap

 

22.要想集合中保存的元素没有重复并且按照一定的顺序排列,可以使用以下哪个集合?

 

A、LinkedListB、ArrayListC、hashSetD、TreeSet

 

三、简答题

 

1.简述&&与&的区别并举例说明。

 

如果使用“&”在表达式之间进行连接,那么无论任何情况,“&”两边的表达式都会参与计

算。

如果使用“&&”进行连接,当“&&”左边的表达式为false,则不会执行其右边的表达

式。

例如定义intx=2,y=0;booleanb=x0表达是会发生被0除异

常,因为x/y的表达式执行了。

而booleanb=x0是不会出现这种异

常的,因为

x

false

,表达式

x/y

不会执行。

 

2.什么是方法重载?

 

方法重载指的是在一个类中可以声明多个同名的方法,而方法中参数的个数或者数据类

型不一致。

调用这些同名的方法时,JVM会根据实际参数的不同绑定到不同的方法。

 

3.构造方法和普通的成员方法有什么区别?

 

构造方法是类的一个特殊成员,它会在类实例化对象时被自动调用。

而普通方法只有在

使用的时候才会被调用。

在定义构造方法时要求方法名与类名相同、在方法名的前面没

有返回值类型的声明、在方法中不能使用return语句返回一个值

 

4.抽象类和接口的区别?

 

在Java中,使用abstract关键字修饰的类称之为抽象类。

抽象类是不能被实例化的,

通常需要写一个子类来继承抽象类,同时实例化子类来获得该类的对象。

抽象类通常用于表示一种抽象的概念。

 

接口可以说是一种特殊的抽象类,接口中只能定义常量和抽象方法。

由于接口的特殊性,在定义时需要使用interface关键字。

 

5.String

 

和StringBuffer

 

有什么区别?

 

String类是不可变类,即字符串值一旦初始化后就不可能改变。

符串类,类似String的缓冲区,可以修改字符串的值。

StringBuffer

 

是可变字

 

6.简述Java的特点。

 

面向对象、跨平台性、健壮性、安全性、可移植性、多线程性、动态性等。

 

7.什么是多态?

 

多态意味着一个对象有着多种形态,可以在特定的情况下,表现不同的状态,从而对应着不同的属性和方法。

简单的说,多态就是使用父类类型的变量引用子类对象,根据被引用子类对象的特性,程序会得到不同的运行效果。

 

8.集合中的List、Set、Map有什么区别?

 

List的特点是元素有序、元素可重复。

List接口的主要实现类有ArrayList和LinkedList。

Set的特点是元素无序、元素不可重复。

Set接口的主要实现类有HashSet和TreeSet。

Map

的特点是存储的元素是键(Key)、值(Value)映射关系,元素都是成对出现的。

Map接口的主

要实现类有HashMap和TreeMap。

 

9.请说说Collection和Collections的有什么区别?

 

Collection是一个单例集合接口。

它提供了对集合对象进行基本操作的通用方法。

Collections是一个工具类。

它包含各种有关集合操作的方法。

 

四、程序题

 

1.请编写程序,实现计算“1+3+5+7++99”的值。

 

publicclassTest01{

 

publicstaticvoidmain(String[]args){

 

intsum=0;

 

for(inti=1;i<100;i++){

 

if(i%2!

=0)

 

sum+=i;

 

}

 

}

 

}

 

2.请按照以下要求设计一个学生类Student,并进行测试。

 

要求如下:

 

1)Student类中包含姓名、成绩两个属性

 

2)分别给这两个属性定义两个方法,一个方法用于设置值,另一个方法用于获取值.

 

3)Student类中定义一个无参的构造方法和一个接收两个参数的构造方法,两个参数

 

分别为姓名和成绩属性赋值

 

4)在测试类中创建两个Student对象,一个使用无参的构造方法,然后调用方法给姓

 

名和成绩赋值,一个使用有参的构造方法,在构造方法中给姓名和成绩赋值

 

classStudent{

 

privateStringname;

 

privatedoublegrade;

 

publicStudent(){

 

}

 

publicStudent(Stringname,doublegrade){

 

=name;

 

=grade;

 

}

 

publicStringgetName(){

 

returnname;

 

}

 

publicvoidsetName(Stringname){

 

=name;

 

}

 

publicdoublegetGrade(){

 

returngrade;

 

}

 

publicvoidsetGrade(doublegrade){

 

=grade;

 

}

 

}

 

publicclassTest01{

 

publicstaticvoidmain(String[]args){

 

Studentstu1=newStudent();

 

("zhangsan");

 

(99);

 

Studentstu2=newStudent("lisi",100);

 

}

 

}.

 

3.在HashSet集合中添加三个Person对象,把姓名相同的人当做同一个人,禁止重复添加。

 

提示:

 

1)Person类中定义name和age属性,重写hashCode()方法和equals()方法,针对Person类的name属性进行比较,如果name相同,hashCode()方法的返回值相同,equals方法返回true。

 

import.*;

 

publicclassTest02{

 

publicstaticvoidmain(String[]args){

 

HashSethashSet=newHashSet();

 

Personp1=newPerson("Jack",25);

 

Personp2=newPerson("Rose",23);

 

Personp3=newPerson("Jack",27);

 

(p1);

 

(p2);

 

(p3);

 

for(Objectobj:

hashSet){

 

Personp=(Person)obj;

 

":

"+;

 

}

 

}

 

}

 

classPerson{

 

Stringname;

 

intage;

 

publicPerson(Stringname,intage){

 

super();

 

=name;

 

=age;

 

}

 

publicinthashCode(){

 

return();

 

}

 

publicbooleanequals(Objectobj){

 

if(this==obj)

 

returntrue;

 

if(obj==null)

 

returnfalse;

 

Personother=(Person)obj;

 

return}}

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 求职职场 > 简历

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1