搜档网
当前位置:搜档网 › java程序设计基础(含参考答案)

java程序设计基础(含参考答案)

java程序设计基础(含参考答案)
java程序设计基础(含参考答案)

“Java程序设计基础”课程习题

一、填空

1.Java程序分两类___Applet___和application,Java Application 类型的程序,程序从

___main方法___开始执行。

2.定义一个Java类时,通过关键字__extends____指明该类的父类。一个类可以有___1___

个父类。

3.用public修饰的类称为_公有类或公用类__。用public修饰的类成员称为公有成员。被

说明为public的内容可以被__所有其他类___ 使用。如果public类文件与使用它的类文件不在同一目录中,需要通过__import____语句引入。

4.用___private___ 修饰的类成员称为私有成员。私有成员只能在__本类__ 中使用。

5.如果子类定义的成员变量与父类的成员变量同名,称为___方法覆盖___ ,要表明使用

子类的成员变量,可以在成员变量前加上关键字__super___ 。

6.____Object__ 类是Java类库中所有类的父类。

7.Java字符使用__16位的字符集,该字符集成为__Unicode____ 。

8.当子类中定义的方法与父类方法同名时,称子类方法___覆盖___ 父类方法,子类默认

使用自己的方法。使用父类的同名方法,必须用关键字__super__ 说明。

9.Java源程序文件名的后缀是___.java___,Java字节码文件名的后缀是_.class_____。

10.Java类名的第一个字母通常要求___大写___。

11.Java程序由____类__组成,每个程序有一个主类,Java程序文件名应与____主__类的

名称相同。

12.Java__Application_类型的程序需要main()方法,程序从__main____开始执行。

13.布尔型数据类型的关键字是_boolean__ ,占用位数是___1位___ ,有__true__ 和_false_

两种值。整型数可以采用_十_ 、__八_ 和__十六_三种进制表示。

14.八进制整数以数字__0_开头。十六进制整数以_0x或0X_ 开头。

15.int整型数占用__32位内存。long整型数占用__64 位内存。

16.127L表示__长整型____ 常量。

17.根据占用内存长度将浮点常量分为_double_____ 和__float____ 两种。

18.单精度浮点常量占用__32_ 位内存,双精度浮点常量占用__64 位内存。

19.在Java语言中,字符串“ABC\tD\b\n”中包括__7个字符。

20.数学关系44&&x<9____ 。数学关系x>3且x<=10对应

的Java表达式是_x>3&&x<=10。数学关系x>3或x<-10对应的Java表达式是_x>3||x<-10_。

21.逻辑表达式true&&false&&true的结果是_false_ 。

22.__new__ 运算符的作用是根据对象的类型分配内存空间。当对象拥有内存空间时,会

自动调用类中的构造方法为对象_初始化_。

23.省略访问修饰符的类只能被同_一包_中的类使用,称之具有包访问特性。

24.用public修饰的类称为_公共类_。用public修饰的类成员称为公共成员。被说明为public

的内容可以被_所有类_ 使用。如果public类文件与使用它的类文件不在同一目录中,需要通过_import_语句引入。

25.用_private_ 修饰的类成员称为私有成员。私有成员只能在_本类使用。

26.在类中可以定义多个具有相同名称、但参数不同的方法,这种做法称为__方法重载_ 。

27.如果子类定义的成员变量与父类的成员变量同名,要表明使用子类的成员变量,可以在

成员变量前加上关键字__this__。

28.在java.1ang包中提供了两个字符串类,分别是_String和_StringBuffer_ 。字符串类

提供的求字符串长度的方法是_length() 。

29.数学类Math属于_https://www.sodocs.net/doc/008770711.html,ng_ 包。数学类提供的常量和函数都是_static_ 类型,无需建

立数学类对象,可以直接通过类名引用数学类的常量和函数。例如,引用圆周率π的方法是Math.PI_ 。

二、判断

1.++i执行后,i值不变,表达式的值也不变。(X)

2.浮点型数据的默认类型为float类型。(X)-----------double

3.设计一般类和主类时,可以有多个一般类,但只能有一个主类。(√)

4.类必须通过创建对象来引用。(√)

5.private声明的变量,不能被其它类引用。(√)

6.StringBuffer类和String类没有区别。(X)

7.println ( )和print()没有区别。( X )

8.JavaApplication和JavaApplet没有区别。( X )

9.Java程序由类组成。( √)

10.Java程序由函数组成。( X)

11.字符$不能作Java标识符的第一个字符。( X ) ---------首位不能是数字

12.一个数组中能够存储不同类型的数据。( X )

13.二维数组需要用两个下标才能确定数组元素。( √)

14.在Java语言中,定义数组后就可以使用。( X)

15.Java提供了许多系统定义类,用户可以直接使用。( X )

16.final类可以有子类。( X )

17.没有分配内存空间的对象不能使用。( √)

18.final类型的变量是符号常量,其值不能改变。( √ )

19.不可以为类定义多个构造方法。( X )

20.一个类不能既是子类又是父类。( X )

21.子类可以继承父类的所有成员。( X)

22.子类只能继承父类成员,不能修改父类成员。( X )

23.Java语言只支持类的单继承,不支持类的多继承。( √ )

24.在类中定义同名方法时,可以依靠返回值区别同名方法。( √)

25.Boolean和boolean没有区别。(X)

三、选择题

1.为AB类的一个无形式参数、无返回值的方法method书写方法头,使得使用类名AB作为前缀就可以调用它,该方法头的形式为( A)。

A)static void method() B)public void method()

C)final void method() D)abstract void method()

3.不能用new运算符创建对象的类是( B )。

A.静态类B.抽象类 c.最终类D.公有类

答:A:一般和其他关键字一起用,不能单独使用;

B:抽象类不能实例化,只能由子类实现

C,D:可以进行实例化

4.在子类中重新编写父类方法的做法称为(B )。

A.方法重载B.方法覆盖C.方法继承D.方法重用

5.对于构造方法,下列叙述正确的是( C )。

A.构造方法是类的一种特殊方法,它的方法名可以任意取

B.构造方法的返回类型只能是void型

C.如果类中定义了构造方法,系统就不再提供默认构造方法

D.类中必须定义构造方法

答:A:方法名只能和当前的类名相同

B:没有void关键字,可以使用不带返回值的return关键字

C:类中如果自定义了构造方法,系统就不再提供默认构造方法

D:类中可以不要构造函数,由系统提供默认的不带任何形参的构造函数

6.为类定义多个名称相同,但参数不同的方法的做法称为(A)。

A.方法重载B.方法覆盖C.方法继承D.方法重用

7.对于构造方法,下列叙述正确的是( B )。

A)构造函数不允许重载

B)用户不能直接调用构造方法,只能由new运算符调用它

C)父类对象不可以用子类构造方法实例化

D)构造方法是实现对象初始化的唯一方法

答:A项:构造函数可以重载

B项:不能直接调用,只能在创建实例化时候会自动加载

C项:子类可以继承父类的非似有属性值,方法,包含构造方法

D项:构造还有静态语法块

8.类的两种基本成分是( A )和成员方法。

A)成员变量B)包C)对象D)接口

9.定义接口的关键字是( C )。

A.extends B.class C.interface D.Public

答:A是继承关键字B为类的关键字

C是定义接口的关键字D是公共修饰符

10.“/*thelastone*/”是下列( D )语句。

A)表达式语句B)条件语句C)循环语句D)注释语句

答:是注释语句

// 单行注释

/*tyhrt*/单行变量常量注释

/**

*多行文本注释

*/

11.当用户退出浏览器时,Applet程序调用的方法是(A)。

A.stop() B.init() C.start() D.destroy()

12.paint()方法有一个固定的参数,该参数的类型是(D)。

A.applet B.Applet C.graphics D.Graphics

13.在编写Java Application程序时,若需要使用到标准输入输出语句,必须在程序的开头写上( C )语句。

A. import java.awt.* ;

B. import java.applet.Applet ;

C. import java.io.* ;

D. import java.awt.Graphics ;

14.对象之间的交互是通过传递( D )来实现的。

A)对象B)方法C)类D)消息

15. Java Applet中,用来向Applet窗口输出字符或图形的常用方法为( A )。

A)paint B)init C)draw D)play

16.推出Java语言的公司是( D )。

A.IBM B.Applet C.Microsoft D.Sun

17.与Java语言相近的语言是( B )。

A.BASIC B.C++ C.FORTRAN D.PASCAL

18.System.out.print(12+3)的输出结果是( A ) 。

A.15 B.123 C.“123”D.“15”

19.System.out.print(“12”+3)的输出结果是(B ) 。

A.15 B.123 C.“123”D.“15”

20.在Java语言中,字节数据类型的关键字和默认值是( A ) 。

A.byte和0 B.byte和1 C.boolean和true D.boolean和false

21.一个字符类型数据占用的二进制位数是( B ) 。

A.8 B.16 C.32 D.64

一个字符是双字节的,2*8=16

22.表示单精度和双精度浮点常量的字母分别是( B ) 。.

A.C和D B.F和D C.B和D D.L和D

23.指出下面哪些是合法的标识符( B ) 。

A.3persons

B.TwoUsers

C.*point

D.this

24.指出下面哪些是将一个十六进制值赋值给一个1ong型变量( D ) 。

A.1ong number=3451。

B.1ong number=0345

C.1ong number=0345L

D.1ong number=0x345L

25.下面的哪些声明是合法的( D ) 。

A.1ong 1=4990.5D;

B.int i=4L;

C.float f=1.1;

D.double d=34.4;

26.1.23E2表示的数据是( C ) 。

A 1.23×2 B.1.23×10-2

C.1.23×102D.0.123×102

27.在Java语言中,只有整型数据才能进行的运算是( C ) 。

A.* B./C.%D.+

28.执行下面语句后,a,b和c的值分别是( C ) 。

int a=2;

int b=(a++)*3;

int c=(++a)*3;

A. 2 6 6 B.4 9 9

C. 4 6 12 D. 3 9 9

29.根据下面的代码:

if(x>0){System.out.println(“第一”);}

else if(x>-3){System.out.println(“第二”);}

else{System.out.println(“第三”);}

判断x的取值在什么范围内时将打印字符串“第二”( D ) ?

A.x>0

B.x>-3

C.x<= 一3

D.x<=0&x>一3

30.用于修饰类的访问修饰符是( A ) 。

A.public B.private C。protected D.statk

31.用abstract修饰的类称为( B ) 。

A,静态类B.抽象类C.最终类D.公有类

32.用final修饰的类称为( C ) 。

A.静态类B.抽象类 c.最终类D.公有类

33.不能用new运算符创建对象的类是( B ) 。

A.静态类B.抽象类 c.最终类D.公有类

34.如果希望方法不能在子类中更改,定义方法时要使用的修饰符是( B ) 。

A.static B.final C.abstract D.native

35.如果希望直接通过类名访问方法,在定义方法时要使用的修饰符是( A ) 。

A.static B.final C.abstract D.native

36.为类定义多个名称相同,但参数不同的方法的做法称为( A )。

A.方法重载B.方法覆盖C.方法继承D.方法重用

37.在子类中重新编写父类方法的做法称为( B )。

A.方法重载B.方法覆盖C.方法继承D.方法重用

38.定义接口的关键字是( C )。

A.extends B.class C.interface D.public

39.要引入applet包中的所有类,应使用的语句是(D)。

A.import java.applet.Applet B.import java.applet.Applet;

C.import java.applet.* D.import java.applet.*;

40.当启动Applet程序时,首先调用的方法是( B )。

A.stop() B.init() C.start() D.destroy()

41.当用户退出浏览器时,Applet程序调用的方法是( A )。

A.stop() B.init() C.start() D.destroy()

42.在Applet程序占用的屏幕上显示文字、图形等信息,应使用的方法是( A )。

A.paint() B.init() C.start() D.destroy()

43.paint()方法有一个固定的参数,该参数的类型是( D )。

A.applet B.Applet C.graphics D.Graphics

44.执行下面的程序段后,向量v的序列是( C )。

V ector v=new Vector(10);

v.addElement(”C++”);

v.addElement (”Java”);

V.addElement(”Basic”);

V.SetElementAt(“SQL—SeVer”,2);

v.removeElementAt(0);

A.”C++””Java””SQL-Sever”B.”C+十””Java””Basic”

C.”Java”“SQL-Sever”D.”Java””Basic””SQL-Sever”

其中addElement()方法:将指定的组件添加到此向量的末尾,将其大小增加1。如果向量的大小比容量大,则增大其容量。SetElementAt()方法:将此向量指定index 处的组件设置为指定的对象。丢弃该位置以前的组件。索引必须为一个大于等于0 且小于向量当前大小的值。删除指定索引处的组件。此向量中的每个索引大于等于指定index 的组件都将下移,使其索引值removeElementAt()方法:变成比以前小 1 的值。此向量的大小将减1。索引必须为一个大于等于0 且小于向量当前大小的值。

45.提供println()方法和print()方法的类是( B )。

A.PrintStream B.System

C.InputStream D.DataOutputStream

四、简答题

1.写出java异常处理的格式,并简要说明。

答:try{ 你要抓的有可能发生异常的代码}catch(你要抓的异常代码会出现的类型在这加个变量名代表这种类型){ 一旦异常出现,这代码块里面的代码会被执行}finally{ 这里的代码是即使出现异常或者没有出现异常,这段代码都会被执行}

2.比较两个字符串的方法有哪些?每个方法的返回值各是什么数据

类型?

答:①比较两个字符串的字符

equals(Object);

equalsIgnoreCase(String anotherString);

这两个方法用来比较两个字符串中对应的每个字符是否相同。前一个方法认为大小写字符是有区别的,后一个方法则忽略大小写,比如,认为A和a是一样的。如果比较结果相同,则返回值为true,反之,则为false

②比较两个字符串大小

compareTo(String str);

这个方法可以将当前字符串和另一个给定字符串比较,判断哪个更长。如当前字符串较短,则返回值为-1;如两个字符串长度相等,则返回值为0;如当前字符串较长,刚返回值为1。

③比较两个子字符串的字符

regionMatches(boolean ignoreCase,int toffset,String other,int ooffset,int len);

regionMatches(int toffset,String other,int ooffset,int len);

上述两个方法用来比较两个字符串中指定区域的子串。入口参数中,用toffset和ooff -

set分别指出当前字符串中的子串起始位置和要与之比较的字符串中的子串起始地址;len 指出比较长度。前一种方法可区分大写字母和小写字母,如果在boolean ignoreCase处写true,表示将不区分大小写,写false则表示将区分大小写。而后一个方法认为大小写字母有区别。由此可见,实际上前一个方法隐含了后一个方法的功能。

④比较两个字符串的前几个字符或者最后几个字符

startsWith(String Prefix);

startsWith(String prefix,int toffset);

endsWith(String suffix);

第1个方法用来比较给定字符串和当前字符串最初几个字符是否相同;第2个方法将

当前字符串的一个子串和给定字符串比较看是否相同;而第3个方法比较两个字符串最后几个字符是否相同。

3.在HTML文件中如何向嵌入的Applet程序传递参数,Applet程序

又如何获得这些参数?

答:由HTML文件嵌入的Applet程序传递参数使用参数param。Applet 小应用程序的实现主要依靠java.applet包中的Applet类。与一般的应用程序不同,Applet应用程序必须嵌入在HTML页面中,才能得到解释执行;同时Applet可以从Web页面中获得参数,并和Web 页面进行交互。

4.Java对标识符有什么规定?下列标识符中哪些是Java合法的标识

符?

答:在Java语言中,标识符可以含任意多个字母、数字、下划线或美元符号,但第一个字符必须为字母、下划线或美元符号,Java关键字不能当作Java标识符。(name、_name、myphone)

2Myclass new name %xy3 —name _name

myphone $s~avy

5.Java字符采用的国际标准编码是什么?有何特点?

答:采用国际化的Unicode字符集。在这种字符集中,每个字符用二个字节即16位表示。这样,整个字符集中共包含65535个字符。其中,前面256个表示ASCII码,使其对ASCII 码具有兼容性;后面21000个字符用来表示汉字、日文片假名、平假名和朝鲜文等。但是Uni -code只用在Java平台内部,当涉及打印、屏幕显示、键盘输入等外部操作时,仍由具体计算机的操作系统决定表示方法。比如,用英文操作系统时,则采用8位二进制表示的ASCII 码。

6.类与对象的关系是什么?如何创建和使用对象?

答:将具有相同属性及相同行为的一组对象称为类。对象是类的具体实例化。

对象的声明:

类名对象名=new 类名();

对象的调用:

访问属性:对象名.属性名;

访问方法:对象名.方法名();

7.static方法如何调用?非static方法如何调用?

答:static 方法:静态方法可以直接通过类名调用,任何的实例也都可以调用,因此静态方法中不能用this 和super 关键字,不能直接访问所属类的实例变量和实例方法(就是不带static 的成员变量和成员成员方法),只能访问所属类的静态成员变量和成员方法。因为static 方法独立于任何实例,因此static 方法必须被实现,而不能是抽象的abstract。(在main方法中可以直接调用)而非static方法要在main方法中新建一个(other1 Ot=new other1),然后再用Ot.show()来调用非static方法要显示的内容。

8.在已有类的基础上派生新类有什么好处?

答:新类可以从一个或多个已有类中继承成员函数或数据成员,而且新类还可以重新定义或加进新的数据和函数。

9.什么是类成员方法的重载?重载的作用是什么?

答:方法重载:是指存在于同一类中的方法指的是多个方法拥有同一个名字,每个方法都有一套唯一的不同于其他同名方法的参数列表。即方法名相同,参数列表不同。

作用:只写一个方法,根据所传参数不同去调用相对的功能。

10.什么是成员方法的覆盖?覆盖的作用是什么?

答:若子类中的方法与父类中的某一方法具有相同的方法名、返回类型和参数表,则新方法将覆盖原有的方法。方法重写又称方法覆盖。

作用:子类可继承父类中的方法,而不需要重新编写相同的方法。但有时子类并不想原封不动地继承父类的方法,而是想作一定的修改,这就需要采用方法的重写。

11.什么是多态?实现多态的方法有哪些?

多态是指一个程序中有多个同名的不同方法,在Java中有两种多态,一种是使用方法的重载实现多态,另一种是使用方法的覆盖实现多态。

方法:"重载"和“重写”

12.接口有哪些特征?如何定义和实现接口?

特征:(1) 一个Java接口是一些方法特征的集合,这些方法特征当然来自于具体方法,但一般都是来自于一些在系统中不断出现的方法。(2) 一个接口只有方法的特征,而没有方法的实现。因此这些方法在不同的地方被实现时,可以具有完全不同的行为。(3) Java接口还可以定义public的常量。Java接口本身没有任何实现,而只描述public行为. (4) Java接口中的方法只能是抽象和公开的,Java接口不能有构造子。Java接口可以由public、static和final的属性。(5) 接口和类的最重要的区别是,接口仅仅描述方法

的特征,而不给出方法的实现;而类不仅给出方法的特征,而且给出方法的实现。因此,接口把方法的特征和方法的实现分割开来。(6) 接口是可插入性的保证。(7) Java设计师应当主要使用Java接口和抽象Java类将软件单位与内部和外部耦合起来。即应当使用Java接口和抽象Java类而不是具体类进行变量的类型声明、参量的类型声明、方法的返回类型声明,以及数据类型的转换等。(8) Java接口(以及Java抽象类)一般用来作为一个类型的等级结构的最高层。(9) 混合...

定义接口:使用interface来定义一个接口。接口定义同类的定义类似,也是分为接口的声明和接口体,其中接口体由常量定义和方法定义两部分组成。

实现接口:接口在定义后,就可以在类中实现该接口。在类中实现接口可以使用关键字implements,其基本格式如下:

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

}

13.包的作用是什么?如何建立包和引用包?

答:常用的包及作用:

java.util是JA V A的utility工具包

https://www.sodocs.net/doc/008770711.html,ng是JA V A的language核心语言包

java.awt是JA V A的abstract window toolkit,抽象窗口工具包

java.applet是创建APPLET的必须包

https://www.sodocs.net/doc/008770711.html,是JA V A有关网络操作的包

java.io是JA V A的输入输出流的包

java.sql是JA V A的数据库操作包

javax.swing是新的界面包

javax开头的都是扩展包

建立只需在程序的最前面增加(其他也类似):

import java.util.*;

14.JavaApplet中通常包括方法init(),start(),stop(),

destroy(),说明这些方法的作用。

init()方法

这个方法主要是为Applet的正常运行做一些初始化工作。当一个Applet被系统调用时,系统首先调用的就是该方法。通常可以在该方法中完成从网页向Applet传递参数,添加用户界面的基本组件等操作。

start()方法

系统在调用完init()方法之后,将自动调用start()方法。而且,每当用户离开包含该Applet的主页后又再返回时,系统又会再执行一遍start()方法。这就意味着start()方法可以被多次执行,而不像init()方法。因此,可把只希望执行一遍的代码放在init()方法中。可以在start()方法中开始一个线程,如继续一个动画、声音等。

stop()方法

这个方法在用户离开Applet所在页面时执行,因此,它也是可以被多次执行的。

它使你可以在用户并不注意Applet的时候,停止一些耗用系统资源的工作以免影响系统的运行速度,且并不需要人为地去调用该方法。如果Applet中不包含动画、声音等程序,通常也不必实现该方法。

destroy()方法

与对象的finalize()方法不同,Java在浏览器关闭的时候才调用该方法。Applet是嵌在HTML文件中的,所以destroty()方法不关心何时Applet被关闭,它在浏览器关闭的时候自动执行。在destroy()方法中一般可以要求收回占用的非内存独立资源。(如果在Applet仍在运行时浏览器被关闭,系统将先执行stop()方法,再执行destroy()方法。

五、编程题

1. 编写一段application程序,计算梯形的面积。(共40分)

(1)创建一个类,类名为学生姓的拼音加上学号(例如:学生“张三”学号1,类名为zhang1),

在该类中添加属性:

成员变量x,y,h(梯形的上底、下底和高):类型为单精度浮点型数据

一个构造方法(有三个参数),用于为梯形的上底、下底和高进行赋值

一个成员方法:area() 返回值为梯形的面积

(2)编写主类(类名为N1),利用构造方法赋值(x,y,h分别为2,4,8)创建对象a1,显示

输出梯形的面积。

import java.util.*;

class N1

{

public static void main(String[] args)

{

deng44 de=new deng44();

de.area();

}

}

class deng44

{

float x=2;

float y=4;

float h=8;

float s;

public void area()

{

s=(x+y)*8/2;

System.out.println("梯形的面积="+s);

}

}

2. 编写Application程序,模拟银行存取款业务。

1)建银行帐户类bank,

添加变量:储户现有款项account(int型)

添加方法:

●存款的方法income:带有一个参数,用来表示存入的钱数(int型),无返回值。

●取款的方法takeout:带有一个参数,用来表示取出的钱数(int型),无返回值。

●显示余额的方法show:无参数,无返回值。

2)建立主类C1,创建对象(模拟储户名zhang3),存款1000,取款500,显示余额。

3. 编写Application程序:

1)创建一个类矩形类Triangle:

成员变量a,b(a为底,b为高);

构造方法:为a,b赋值;

添加两个成员方法:分别计算周长和面积。

2)编写主类,利用Triangle输出a=2,b=3时(使用构造方法赋值)矩形的周长和面积。import java.util.*;

class Triangle

{

public static void main(String[] args)

{

deng44 de=new deng44();

de.area();

de.Perimeter();

}

}

class deng44

{

int a=2;

int b=3;

int s;

int zc;

public void area()

{

s=a*b;

System.out.println("矩形的面积="+s);

}

public void Perimeter()

{

zc=(a+b)*2;

System.out.println("矩形的周长="+zc);

}

}

4.首先定义一个StringBuffer,类对象s,然后通过append()方法为对象s添加26个小写字母。要求每次添加一个字母,共添加26次。(字母a的编码对应整数为97,b为98,以此类推)

5.利用数学类提供的平方根方法计算并输出1.0,2.0,3.0,…,10.0的平方根之和。import java.util.*;

class Ping

{

public static void main(String[] args)

{

double sum=0;

for (double n=1.0;n<11.0 ;n++ )

{

sum=Math.sqrt(n)+sum;

}

System.out.println("1.0~10.0的平方根的和为:"+sum);

}

}

6.请将下面程序补充完整。说明程序的类型、运行结果和字节码文件名。

//程序文件名为MyApplication.java

public class MyApplication

{public main(String[] args)

{System.out.println("Welcom to Java World");}

}

7.请将下面程序补充完整。说明程序类型、运行结果和字节码文件名。

//程序文件名为Appletl.java

import java.awt.*;

import java.applet.*;

public class____Appletl__ extends Applet

{public void paint(Graphics g)

{g.drawString("Welcom to Java World”,20,20);}

}

为上面程序编写一个HTML文件,将Appletl.class字节码文件像入嵌入其中。

8.编写一个Java Applicatin程序。程序中首先定义一个三行四列的二维数组,然后利用属性length输出数组的行数和各行的列数。

import java.util.*;

public class shuzu

{

public static void main(String[] args)

{

int shu[][]={{1,2,3,4},{5,6,7,8},{9,10,11,12}};

System.out.println("该数组为:");

for (int i=0;i<3 ;i++ )

{

System.out.println(shu[i][0]+"\t"+shu[i][1]+"\t"+shu[i][2]+"\t"+shu[i][3]);

}

System.out.println(" ");

System.out.println("数组的行数为:"+shu.length);

System.out.println("第一行的列数为:"+shu[0].length);

System.out.println("第二行的列数为:"+shu[1].length);

System.out.println("第三行的列数为:"+shu[2].length);

}

}

9.编写程序,根据考试成绩的等级打印出百分制分数段。设:A为90分以上,B为80分以上,C为70分以上,D为60分以上,E为59分以下。要求在程序中使用开关语句。

public class Student{

public static void main(String args[]){

char grade='C';

switch(grade){

case'A':System.out.println(grade+": 90~100");

break;

case'B':System.out.println(grade+":80~89");

break;

case'C':System.out.println(grade+":70~79");

break;

case'D':System.out.println(grade+": 60~69");

break;

case'E':System.out.println(": <60");

break;

default:System.out.println("输入有误!");

}

}

}

10.编写程序,计算n的阶乘(n!),设n=10。import java.util.*;

public class Triangle

{

public static void main(String[] args)

{

int n=10;

for (int i=1;i<10;i++)

{

n=n*i;

}

System.out.println("10的阶乘为:"+n);

}

}

class Test

{

static int loop(int max,int min){

int v,m,n;

v = 0;

m = max;

n = min;

while(m-- > n){

v += m;

}

return v;

};

public static void main(String[] args)

{

int rs = Test.loop(10,0);

System.out.println(rs);

}

}

11.写出下面程序的输出结果。

public class AreaClass

{public static void main(String[]args)

{System.out.println(“边长为4的正方形面积是”+area(4));

System.out.println(“边长为4的正方形周长是”+clrcumference(4));

static double circumference(double len)

{return 4*len;}

static double area(double len)

{return len*len;} }

12.将下面程序补充完整,并写出输出结果。

class Myclass

{__private_ int y:5;__//定义y为私有变量

___public_ void show()___{___//定义show()为公有方法

System.out.println(“y:”+y);

} }

public class·UseMyclass

{public static void main(String args[])

{____Myclass Ob=new Myclass()___ ;//定义Myclass类的对象Ob ____Ob.show()_____;//调用方法show()

} }

13.指出下面程序中的错误,并修改正确。

class Class2

{private int y;

private void show()

{System.out.println(“show method is private”);}

}

public void usesecret()

{

S ystem.out.println(“XXXXXYYYYY”);

};

public class Classl

{public static void main(String args[])

{Class1 Ob=new Class1();

https://www.sodocs.net/doc/008770711.html,esecret();

Ob.show();

} }

14.定义student类,其中包括四个私有变量(name,age,sex,score)、一个构造方法和show ()方法。各成员的含义如下:

*变量name为字符串类型String,用于存储学生的姓名。

*变量age为int类型,用于存储学生的年龄。

*变量sex为boolean类型,用于存储学生的性别,男生为false,女生为true。

*变量score为double类型,用于存储学生的成绩。

*构造方法包括四个参数,用于为变量(name,age,sex和score)赋值。

*show()方法无参数,用于输出变量(name,age,sex和score)的值。

public class Student {

private String name;

private int age;

private boolean sex;

private double score;

public Student(String name, int age, boolean sex, double score) {

super();

https://www.sodocs.net/doc/008770711.html, = name;

this.age = age;

this.sex = sex;

this.score = score;

}

public void show() {

System.out.println("name = " + https://www.sodocs.net/doc/008770711.html, + ";" + "age = " + this.age

+ ";" + "sex = " + this.sex + ";"+ "score = " + this.score + ";");

}

public static void main(String[] args) {

Student stu = new Student("dengqizhi", 19, false, 100D);

stu.show();

}

}

15.编写一个字符界面的Java Application 程序,接受用户输入的10个整数,并输出这10个整数的最大值和最小值。

import java.util.*;

public class A

{

public static void main(String[] args)

{

Scanner in = new Scanner(System.in);

System.out.println("请输入10个任意的整数:");

int max = Integer.MIN_V ALUE;

int min = Integer.MAX_V ALUE;

for (int i = 0; i < 10; i++)

{

int j = in.nextInt();

if (max < j) max = j;

if (min > j) min = j;

}

System.out.println("最大值为" + max);

System.out.println("最小值为" + min);

}

}

16、编程实现:从键盘输入10个整数,求这10个数中的最大值和最小值。

import java.util.Scanner;

class test7

{

public static void main(String[] args)

{

int i=0;

int shu[];

shu=new int[10];

Scanner input =new Scanner(System.in);

while (i<10)

{

System.out.print("请输入第"+(i+1)+"个数:");

shu[i]=input.nextInt();

i++;

}

int max=shu[0];

int min=shu[0];

for (i=0;i<10 ;i++ )

{

if (max

{

max=shu[i];

i++;

}

}

System.out.println("该数组的最大值为"+max);

for ( i=0;i<10 ;i++ )

{

if (min>shu[i])

{

min=shu[i];

i++;

}

}

System.out.println("该数组的最小值为"+min);

}

}

17、设有一字符串数组中保存你5个好友的名字,从键盘输入一个字符串,判断是否为你5个好友之一的名字。

import java.util.*;

public class caiming

{

public static void main(String[] args)

{

String shu[];

shu=new String[5];

shu[0]="yangguo";

shu[1]="yinxin";

shu[2]="xina";

shu[3]="wuji";

shu[4]="mksun";

int i=1;

System.out.print("请猜数组中的一个好友名:");

Scanner input = new Scanner(System.in);

String shuru=input.next();

if

(shu[0].equals(shuru)||shu[1].equals(shuru)||shu[2].equals(shuru)||shu[3].equals(shuru)||shu[4].equ als(shuru))

{

System.out.print("你猜对了!");

}

else System.out.print("你猜错了!");

}

}

18、编写程序:自定义一个方法void power(int x,int y),其功能是计算整数x的y次方,并在主方法中测试。

import java.util.*;

public class shuzu

{

public static void main(String[] args)

{

Scanner input=new Scanner(System.in);

System.out.print("请输入X的值:");

int x=input.nextInt();

System.out.print("请输入y的值:");

int y=input.nextInt();

tpower po=new tpower();

po.power(x,y);

}

}

class tpower

{

int x;

int y;

public void power(int x,int y)

{

this.x = x;

this.y = y;

int zong=1;

for ( zong=1; y>0 ;y-- )

{

zong=x*zong;

}

System.out.println("整数x的y次方="+zong);

} }

Java程序设计实例教程考试题

Java程序设计练习题 一、选择题 1、为使Java程序独立于平台,Java虚拟机把字节码与各个操作系统及硬件( A ) A)分开B)结合 C)联系D)融合 2、Java语言与C++语言相比,最突出的特点是( C ) A)面向对象B)高性能 C)跨平台D)有类库 3、下列Java源程序结构中前三种语句的次序,正确的是(D) A)import,package,public class B)import必为首,其他不限 C)public class,package,import D),import,public class 4、在JDK目录中,Java程序运行环境的根目录是( A ) A)bin B)demo C)lib D)jre 5、下列运算符中属于关系运算符的是(A ) A)== B).= C)+= D)-= 6、下列布尔变量定义中,正确并且规范的是( B ) A)BOOLEAN canceled=false; B)boolean canceled=false; C)boolean CANCELED=false; D)boolean canceled=FALSE; 7、下列关键字中可以表示常量的是( A ) A)final B)default C)private D)transient 8、下列运算符中,优先级最高的是( A ) A)++ B)+ C)* D)> 9、Java中的基本数据类型int在不同的操作系统平台的字长是( B ) A)不同的B)32位 C)64位D)16位

10、给一个short类型变量赋值的范围是( C ) A)-128 至 +127 B)-2147483648至 +2147483647 C)-32768至 +32767 D)-1000至 +1000 11、下列运算中属于跳转语句的是( D ) A)try B)catch C)finally D)break 12、switch语句中表达式(expression)的值不允许用的类型是( C ) A)byte B)int C)boolean D)char 13、下列语句中,可以作为无限循环语句的是( A ) A)for(;;) {} B)for(int i=0; i<10000;i++) {} C)while(false) {} D)do {} while(false) 14、下列语句中执行跳转功能的语句是( C ) A)for语句B)while语句 C)continue语句D)switch语句 15、下列表达式中,类型可以作为int型的是( C ) A)“abc”+”efg”B)“abc”+’efg’ C)‘a’+’b’D)3+”4” 17、数组中各个元素的数据类型是( A ) A)相同的B)不同的 C)部分相同的D)任意的 18、在Java语言中,被成为内存分配的运算符是( A ) A)new B)instance of C)[] D)() 19、接口中,除了抽象方法之外,还可以含有( B ) A)变量B)常量 C)成员方法D)构造方法 20、下列能表示字符串s1长度的是( A ) A)s1.length()B)s1.length C)s1.size D)s1.size() 21、StringBuffer类字符串对象的长度是( C ) A)固定B)必须小于16个字符 C)可变D)必须大于16个字符 22、构造方法名必须与______相同,它没有返回值,用户不能直接调用它,只能通过new调用。( A ) A)类名B)对象名 C)包名D)变量名 23、子类继承了父类的方法和状态,在子类中可以进行的操作是( D ) A)更换父类方法B)减少父类方法 C)减少父类变量D)添加方法 24、String、StingBuffer都是______类,都不能被继承。( C )

Java编程基础知识点汇总及习题集答案

J a v a编程基础知识点汇总及习题集答案 集团文件发布号:(9816-UATWW-MWUB-WUNN-INNUL-DQQTY-

目录 第一章 Java入门 (2) 第二章 Java基础 (5) 第三章条件转移 (14) 第四章循环语句 (20) 第五章方法 (26) 第六章数组 (33) 第七章面向对象 (42) 第八章异常 (63) 第一章 Java入门 知识点汇总 1、JAVA 三大体系 Java SE:(J2SE,Java2 Platform Standard Edition,标准版),三个平台中最核心的部分,包含Java 最核心的类库。 JavaEE:(J2EE,Java 2 Platform, Enterprise Edition,企业版),开发、装配、部署企业级应用,包含Servlet、JSP、JavaBean、JDBC、EJB、Web Service等。 Java ME:(J2ME,Java 2

Platform Micro Edition,微型版),用于小型电子设备上的软件开发。 2、JDK,JRE,JVM的作用及关系作用 ★JVM:保证Java语言跨平台 ★JRE:Java程序的运行环境 ★JDK:Java程序的开发环境 关系 ★JDK:JRE+工具 ★JRE:JVM+类库 3、JDK环境变量配置 path环境变量:存放可执行文件的存放路径,路径之间 用逗号隔开 classpath环境变量:类的运行路径,JVM在运行时通过classpath加载需要的类 4、重点掌握两个程序 :Java编译器工具,可以将编写好的Java文件(.java)编译成Java字节码文件(.class); :Java运行工具,启动Java虚拟机进程,运行编译器生成的字节码文件(.class) 5、一切程序运行的入口public static void main (String args []){ World!”); } 课堂笔记

JAVA测试题(三套含答案)

1.在单一文件中import、class和package的正确出现顺序是:A A.package, import, class B.class, import, package C.import, package, class D.package, class, import 2.public static void main方法的参数描述是:A,D A.String args[] B.Strings args[] C.String args D.String []args 3.下面哪行代码会在编译的时候出现错误或警告:A,B,C,D A.float f=; B.char c="a"; C.byte b=257; D.boolean b=null; E.int i=10; 4. 编译,运行下列代码后的结果是:D public class Test { public static void main (String args []) { int age; age = age + 1; "The age is " + age); } } A.编译,运行后没有输出 B.编译,运行后输出:The age is 1 C.能通过编译,但运行时产生错误 D.不能通过编译 4.下面那些关键字不是JAVA的关键字B A if B then C goto D while E case 5.下面那些不是合法的变量定义:A,F C. _whatavariable D. _3_

6.内部数据类型byte的取值范围是B - 65, 535 B.(–128) – 127 C.(–32,768) – 32,767 D.(–256) – 255 7.下列哪些表达式返回true AB A."john" == "john" B."john".equals("john") C."john" = "john" D."john".equals(new Button("john")) 8.声明公用的abstract方法的正确格式是A A.public abstract void add(); B.public abstract void add() {} C.public abstract add(); D.public virtual add(); 9.下面的代码能打印出的结果为:C int i=1; switch (i) { case 0: "zero"); break; case 1: "one"); case 2: "two"); default: "default"); } B.one, default C.one, two, default D.default 10.下面的代码能打印出的结果为:B int i=9; switch (i) { default: "default"); case 0:

java基础测试题

一、选择题48分每题2分 1.面向对象的三大特性不包括() A 封装 B 继承 C 多态 D 消息通信 2.下列声明哪个是错误的() A int i = 10; B float f = 1.1; C double d = 34.4; D long m = 4990; 3.程序的执行结果是() public class Test { public static void main(String [] args){ System.out.println(“”+'a'+1); } } A 98 B a 1 C 971 D 197 4.程序的执行结果是() public class Test { int x; public static void main(String [] args){ Test t = new Test(); t.x=5; change(t); System.out.println(t.x); } public static void change(Test t){ t.x=3; } } A 5 B 3 C 编译出错 D 以上答案都不对 5.关于类与对象说法错误的是() A 类是模板,对象是产品 B 人是类,男人是对象 C 类是对某一事物的描述是抽象的,对象是实际存在的该类事物的个体 D 汽车设计图是类,制造的若干汽车是对象 6.关于构造函数说法错误的是() A 构造函数名与类相同 B 构造函数无返回值,可以使用void 修饰 C 构造函数在创建对象时被调用 D 在一个类中如果没有明确的给出构造函数,编译器会自动提供一个构造函数7.程序的执行结果是() public class Test { public static void main(String [] args){ String str1= new String("abc"); String str2 = new String("abc"); String str3=str1; if(str1.equals(str2)){ System.out.println("true"); }else{ System.out.println("false"); } if(str1==str3){

Java语言程序设计基础教程习题解答

《Java语言程序设计基础教程》练习思考题参考答案

第1章 Java程序设计概述 练习思考题 1、 Java运行平台包括三个版本,请选择正确的三项:() A. J2EE B. J2ME C. J2SE D. J2E 解答:A,B,C 2、 Java JDK中反编译工具是:() A. javac B. java C. jdb D. javap 解答:D 3、 public static void main方法的参数描述是:() A. String args[] B. String[] args C. Strings args[] D. String args 解答:A,B 4、在Java中,关于CLASSPATH环境变量的说法不正确的是:() A. CLASSPATH一旦设置之后不可修改,但可以将目录添加到该环境变量中。 B. 编译器用它来搜索各自的类文件。 C. CLASSPATH是一个目录列表。 D. 解释器用它来搜索各自的类文件。 解答:A 5、编译Java Application源文件将产生相应的字节码文件,扩展名为() A. .java B. .class C. .html D. .exe 解答:B 6、开发与运行Java程序需要经过的三个主要步骤为____________、____________和____________。 7、如果一个Java Applet源程序文件只定义有一个类,该类的类名为MyApplet,则类MyApplet必须是______类的子类并且存储该源程序文件的文件名为______。 8、如果一个Java Applet程序文件中定义有3个类,则使用Sun公司的JDK编译器编译该源程序文件将产生______个文件名与类名相同而扩展名为______的字节码文件。 9、开发与运行Java程序需要经过哪些主要步骤和过程? 10、Java程序是由什么组成的?一个程序中必须要有public类吗?Java源文件的命名规则是怎么样的? 11、编写一个简单的Java应用程序,该程序在命令行窗口输出两行文字:“你好,很高兴学习Java”和“We are students”。

Java基础试题及其答案

Java试题 1) java程序中,main方法的格式正确的是()。(选择一项) a)static void main(String[] args) b)public void main(String[] args) c)public static void main(String[]s) d)public static void main(String[] args) 2)给定java代码,如下: public byte count(byte b1,byte b2){ return______; } 要使用这段代码能够编译成功,横线处可以填入()。(选择一项)a)(byte) (b1-b2) b)(byte) b1-b2 c) b1-b2 d) (byte) b1/b2 3)在Java中,在包下定义一个类,要让包下的所有类都可以访问这个类,这个类必须定义为()。(选择一项) a)protected b)private c)public d)friendly 4)在Java中,下列()语句不能通过编译。 (选择一项) a) String s= “join”+ “was”+ “here”; b) String s= “join”+3; “”+new Person() toString() c) int a= 3+5 d) float f=5+; double float 6)给定java代码如下,运行时,会产生()类型的异常。(选择一项) String s=null; (“abc”); a)ArithmeticException b)NullPointerException c)IOException d)EOFException 已到文件尾,再读取抛出 7) 在java中,()对象可以使用键/值的形式保存数据。(选择一项) a)ArrayList List 有序可重复 b) HashSet Set 无序不可重复同一对象是重复 的 c) HashMap Map(key/value)重复定义:hashCode、 equals(业务) d) LinkedList List 8)给定如下java代码,编译运行之后,将会输出()。 public class Test{ public static void main(String args[]){ int a=5;

Java笔试题及答案

Java笔试题及答案 一、单项选择题 1.Java是从()语言改进重新设计。 A.Ada B.C++ C.Pasacal D.BASIC 答案:B 2.下列语句哪一个正确() A. Java程序经编译后会产生machine code B. Java程序经编译后会产生byte code C. Java程序经编译后会产生DLL D.以上都不正确 答案:B 3.下列说法正确的有() A. class中的constructor不可省略 B. constructor必须与class同名,但方法不能与class同名 C. constructor在一个对象被new时执行 D.一个class只能定义一个constructor 答案:C 详解:见下面代码,很明显方法是可以和类名同名的,和构造方法唯一的区别就是,构造方法没有返回值。 package net.study; public class TestConStructor { public TestConStructor() {

} public void TestConStructor() { } public static void main(String[] args) { TestConStructor testConStructor = new TestConStructor(); testConStructor.TestConStructor(); } } 4.提供Java存取数据库能力的包是() 答案:A 5.下列运算符合法的是() A.&& B.<> C.if D.:= 答案:A 详解: java 中没有<> := 这种运算符,if else不算运算符 6.执行如下程序代码 a=0;c=0; do{ --c; a=a-1; }while(a>0); 后,C的值是()

Java程序设计实用教程_习题解答

习题 1 1.James Gosling 2.需3个步骤: 1)用文本编辑器编写源文件 2)使用Java编译器(javac.exe)编译源文件,得到字节码文件。 3)使用java解释器(java.exe)来解释执行字节码文件。 3.D:\JDK 1) 设置path 对于Windows 2000/2003/XP,右键单击“我的电脑”,在弹出的快捷菜单中选择“属性”,弹出“系统特性”对话框,再单击该对话框中的“高级选项”,然后单击“环境变量”按钮,添加系统环境变量path。如果曾经设置过环境变量path,可单击该变量进行编辑操作,将需要的值d:\jdk\bin加入即可(注意:修改系统环境变量path后要重新打开DOS窗口编译)。或在DOS窗口输入命令行: set path=d:\jdk\bin(注意:用此方法修改环境变量每次打开DOS窗口都需要输入该命令行重新进行设置)。 2) 设置classpath 对于Windows 2000/2003/XP,右键单击“我的电脑”,在弹出的快捷菜单中选择“属性”,弹出“系统特性”对话框,再单击该对话框中的“高级选项”,然后单击“环境变量”按钮,添加系统环境变量classpath。如果曾经设置过环境变量classpath,可单击该变量进行编辑操作,将需要的值d:\jdk\jre\lib\rt.jar;.;加入即可。或在DOS窗口输入命令行: set classpath= d:\jdk\jre\lib\rt.jar;.;。 4.(B)javac 5.Java源文件的扩展名是”.java”,Java字节码的扩展名是”.class” 6.Java应用程序主类的main申明(D)public static void main(String args[])

JAVA入门练习50题(含答案)

题目:古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少? //这是一个菲波拉契数列问题 public class lianxi01 { public static void main(String[] args) { System.out.println("第1个月的兔子对数: 1"); System.out.println("第2个月的兔子对数: 1"); int f1 = 1, f2 = 1, f, M=24; for(int i=3; i<=M; i++) { f = f2; f2 = f1 + f2; f1 = f; System.out.println("第" + i +"个月的兔子对数: "+f2); } } } 【程序2】 题目:判断101-200之间有多少个素数,并输出所有素数。 程序分析:判断素数的方法:用一个数分别去除2到sqrt(这个数),如果能被整除,则表明此数不是素数,反之是素数。 public class lianxi02 { public static void main(String[] args) { int count = 0; for(int i=101; i<200; i+=2) { boolean b = false; for(int j=2; j<=Math.sqrt(i); j++) { if(i % j == 0) { b = false; break; } else { b = true; } } if(b == true) {count ++;System.out.println(i );} } System.out.println( "素数个数是: " + count); } }

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基础练习题

1) 以下关于Java语言说法错误的是()。(选择两项) a) Java语言是一种OO语言,Java API是Java语言的帮助文档 b) Java语言具有平台无关性-Write Once,Run Anywhere c) Java语言的核心是Java Virtual Machine d) 使用Java语言,程序员要使用原始方法分配和释放内存空间 e) Java语言是一种编译执行语言 知识点: 第一章Java语言基础Java语言基本概念 2) 以下哪一项不是Java的关键字(b)。(选择一项) a) if b) then c) goto d) case e) while 知识点: 第二章Java编程基础Java中的关键字 3) 下列(a,e)不是合法的Java语言标识符。(选择两项) a) 2variable b) variable2 c) _whatavariable d) $anothervar e) #myvar f) _3_ 知识点: 第二章Java编程基础Java中的标识符 4) 执行下列代码段后,变量x的值是(c)。(选择一项) x=9; y=9; x=(y<=x++)?1:0; a) 1 b) 2 c) 0 d) 10 知识点: 第二章Java编程基础三元运算符 5) System.out.println(4 | 7);上面语句的输出结果是(d)。(选择一项) a) 4 b) 5 c) 6 d) 7 e) 0 知识点: 第二章Java编程基础位运算符 6) 以下会产生编译错误的Java语句是(b)。(选择一项) a) if (2 == 3) System.out.println("Hi"); b) if (2 = 3) System.out.println("Hi");

JAVA试题及答案

JA V A语言基础内部测试题 选择题(针对以下题目,请选择最符合题目要求的答案,针对每一道题目,所有答案都选对,则该题得分,所选答案错误或不能选出所有答案,则该题不得分。)(每题2分) 没有注明选择几项的,只选择一项 1、JAVA所定义的版本中不包括:() A、JAVA2 EE B、JAVA2 Card C、JAVA2 ME D、JAVA2 HE E、JAVA2 SE 2、下列说法正确的是() A、JAVA程序的main方法必须写在类里面 B、JAVA程序中可以有多个main方法 C、JAVA程序中类名必须与文件名一样 D、JAVA程序的main方法中如果只有一条语句,可以不用{}(大括号)括起来 3、Java中,在如下所示的Test类中,共有()个构造方法。 public class Test{ private int x; public Test(){ x=35; } public void Test(double f){ =(int)f; } public Test(String s){} } A、0 B、 1 C、 2 D、3 4、变量命名规范说法正确的是() A、变量由字母、下划线、数字、$符号随意组成; B、变量不能以数字作为开头; C、A和a在java中是同一个变量; D、不同类型的变量,可以起相同的名字; 5、下列javaDoc注释正确的是() A、/*我爱北京天安门*/

B、quals("john") C、"john" = "john" D、"john".equals(new String("john")) 6、下列输出结果是() int a = 0 ; while ( a < 5 ) { switch(a){ case 0: case 3 : a = a + 2; case 1 : case 2 : a = a + 3; default : a = a + 5; } } ( a ) ; A、0 B、5 C、10 D、其他 7、下列代码输出结果是( ) int i = 10; while ( i > 0 ){ i = i + 1; if ( i = =10 ){ break; } } A.while循环执行10次 B.死循环 C.循环一次都不执行 D.循环执行一次 8、下面有关for循环的描述正确的是() A、for循环体语句中,可以包含多条语句,但要用大括号括起来 B、for循环只能用于循环次数已经确定的情况 C、在for循环中,不能使用break语句跳出循环 D、for循环是先执行循环体语句,后进行条件判断 9、下列()属于引用数据类型(选择两项) A、String B、char C、用户自定义的Student类类型

java笔试题及答案.doc

java笔试题及答案 有了下面java笔试题及答案,进行java笔试时就容易多了,请您对下文进行参考: 1、作用域public,private,protected,以及不写时的区别 答:区别如下: 作用域当前类同一package子孙类其他package public 7 7 7 7 protected 7 7 7 X friendly 7 7 X X private 7 X X X 不写时默认为friendly 2、Anonymouslnner Class (匿名内部类)是否可以exte nd s (继承)其它类,是否可以imple ment s (实现)i nterf ace (接口) 答:匿名的内部类是没有名字的内部类。不能exte n ds (继承)其它类,但一个内部类可以作为一个接口,由另一个内部类实现 3、Sta ti cNestedC las s 和Inner Clas s 的不同答: Nes tedC lass (一般是C+ +的说法),In ne rClass (—般是JAVA的说法)。J ava内部类与C++嵌套类最大的不同就在于是否有指向外部的引用上。注:静态内部类(I

nn erClass)意味着1创建一个st atic内部类的对象,不需要一个外部类对象,2不能从一个st atic内部类的一个对象访问一个外部类对象 4、和的区别 答:是位运算符,表示按位与运算,是逻辑运算符,表示遷辑与(and ) 5、Coll ect ion 和Col lect ions 的区别 答:Coll ect ion是集合类的上级接口,继承与他的接口主要有Set和List. Col lections是针对集合类的一个帮助类,他提供一系列静态方法实现对各种集合的搜索、排序、线程安全化等操作 6、什么时候用assert 答:asserti on (断言)在软件开发中是一种常用的调试方式,很多开发语言中都支持这种机制。在实现中,a ssertion 就是在程序中的一条语句,它对一个boolea n表 达式进行检查,一个正确程序必须保证这个bool ean表达 式的值为tr ue;如果该值为fal se,说明程序己经处于不正确的状态下,系统将给出警告或退出。一般来说,

java笔试题含答案

班级:_______________ 学号:______________ 姓名:___________ Java 笔试题 (可多选) 1. 下面哪些是Thread类的方法( ABD) A start() B run() C exit() D getPriority() 2. 下面关于类的说法正确的是(A) A 继承自Throwable B Serialable C 该类实现了Throwable 接口 D 该类是一个公共类 3. 下面程序的运行结果是( false ) String str1 = "hello"; String str2 = "he" + new String("llo"); == str2); 4. 下列说法正确的有( C) A. class中的constructor不可省略

B. constructor必须与class同名,但方法不能与class同名C. constructor在一个对象被new时执行 D.一个class只能定义一个constructor 5. 指针在任何情况下都可进行>, <, >=, <=, ==运算( true ) 6. 下面程序的运行结果:(B) public static void main(String args[]) { Thread t = new Thread() { public void run() { pong(); } }; (); "ping"); } static void pong() { "pong"); } A pingpong

B pongping C pingpong和pongping都有可能 D 都不输出 7. 下列属于关系型数据库的是(AB) A. Oracle B MySql C IMS D MongoDB 8. GC(垃圾回收器)线程是否为守护线程( true ) 9. volatile关键字是否能保证线程安全( false ) 10. 下列说法正确的是(AC) A LinkedList继承自List B AbstractSet继承自Set C HashSet继承自AbstractSet D WeakMap继承自HashMap 11. 存在使i + 1 < i的数吗(存在) 12. 的数据类型是(B) A float B double C Float D Double

Java基础笔试机试测试题(带答案)

Java基础考试题 班级:__________ 姓名:___________ 日期:_____________ 一、笔试(45题,每题2分) 1) 分析下面的Java程序段,编译运行后的输出结果是()。 public class Test { public static void changeString(StringBuffer sb) { sb.append("stringbuffer2"); } public static void main(String[] args) { StringBuffer sb = new StringBuffer("stringbuffer1"); changeString(sb); System.out.println("sb = " + sb.toString()); } } A. sb = stringbuffer2stringbuffer1 B. sb = stringbuffer1 C. sb = stringbuffer2 D. sb = stringbuffer1stringbuffer2 2) 在Java中,包有多种用途,但不包含()。 A. 将类组合成较小的单元,便于使用 B. 有助于避免命名冲突 C. 有助于提高运行效率 D. 允许在更广的范围内保护类、数据和方法 3) 在Java中,如果要在字符串类型s="java" 中,得到字母'v' 出现的位置,选()语句。 A)s.matches('v'); B)s.charAt('v'); C)s.indexOf('v'); D)s.substring('v'); 4)下列代码运行后,变量 c 的值是()。 int a=15,b=10; double c=a/b; a) 1.5 b) 1.0 c) 1 d) 0 5)main 方法如下所示,该程序的运行结果是()。 public static void main(String [] args){ int i=0; System.out.print(i++); } a) 输出0 b) 输出1 c) 编译错误d) 运行时出现异常

最新Java基础试题及其答案

Java试题 一单项选择 1)在Java中,在包com.db下定义一个类,要让包com.util下的所有类都可以访问这个类,这个类必须定义为()。() a)protected b)private c)public d)friendly 2)在Java中,下列()语句不能通过编译。(选择一项) a) String s= “join”+ “was”+ “here”; b) String s= “join”+3; c) int a= 3+5 d) float f=5+5.5; 3)给定java代码如下,运行时,会产生()类型的异常。(选择一项) String s=null; s.concat(“abc”); a)ArithmeticException b)NullPointerException c)IOException d)EOFException 4) 在java中,()对象可以使用键/值的形式保存数据。(选择一项) a)ArrayList b) HashSet c) HashMap d) LinkedList 5)给定如下java代码,编译运行之后,将会输出()。 public class Test{ public staticvoid main(String args[]){ int a=5; System.out.println(a%2==1) ?(a+1) /2:a/2) ; } } (选择一项) a)1 b)2 c)2.5 d)3 6)以下Java语句中,String str = “123456789”;str =str.subString(1,3);执行后str中的值为。(选择一项) a) “23” b)“123”

JAVA试题及答案(精致)

选择题 1、JAVA所定义的版本中不包括:( D ) A、JAVA2 EE B、JAVA2 Card C、JAVA2 ME D、J AVA2 HE E、J AVA2 SE 2、下列说法正确的是( A ) A、JAVA程序的main方法必须写在类里面 B、JAVA程序中可以有多个main方法 C、JAVA程序中类名必须与文件名一样 D、J AVA程序的main方法中如果只有一条语句,可以不用{}(大括号)括 起来 3、变量命名规范说法正确的是( B ) A、变量由字母、下划线、数字、$符号随意组成; B、变量不能以数字作为开头; C、A和a在java中是同一个变量; D、不同类型的变量,可以起相同的名字; 4、下列javaDoc注释正确的是( C ) A、/*我爱北京天安门*/ B、//我爱北京天安门*/ C、/**我爱北京天安门*/ D、/*我爱北京天安门**/ 5、为一个boolean类型变量赋值时,可以使用( B )方式 A、boolean = 1; B、boolean a = (9 >= 10); C、boolean a="真"; D、b oolean a = = false; 6、以下( C )不是合法的标识符 A、STRING B、x3x; C、void D、d e$f 7、表达式(11+3*8)/4%3的值是( D )

A、31 B、0 C、1 D、2 8、( A )表达式不可以作为循环条件 A、i++; B、i>5; C、bEqual = str.equals("q"); D、c ount = = i; 9、运算符优先级别排序正确的是(A ) A、由高向低分别是:()、!、算术运算符、关系运算符、逻辑运算符、 赋值运算符; B、由高向低分别是:()、关系运算符、算术运算符、赋值运算符、!、 逻辑运算符; C、由高向低分别是:()、算术运算符、逻辑运算符、关系运算符、!、 赋值运算符; D、由高向低分别是:()、!、关系运算符、赋值运算符、算术运算符、 逻辑运算符; 10、以下程序的运行结果是:( B ) public class Increment{ public static void main(String args[]) { int a; a = 6; System.out.print(a); System.out.print(a++); System.out.print(a); } } A.666 B.667 C.677 D.676 11、下列值不为true的表达式有( C )。 A、"john" = = "john" B、"john".equals("john") C、"john" = "john" D、"john".equals(new String("john")) 12、下列输出结果是( C )

java基础测试题及答案

、选择题(每题 2 分,共40 分) 1、下面哪个是Java 语言中正确的标识符( C ) A、3com B 、import C、that D、this 2、下面哪个语句(初始化数组)是不正确的: ( B ) A.int x[] = {1,2,3}; B .int x[3] = {1,2,3}; C.int[] x = {1,2,3}; D .int x[] = new int[]{1,2,3}; 3、下述概念中不属于面向对象方法的是( D ) 。 A. 对象、消息??B?继承、多态? ?? C.类、封装? ??? D .过程调用 4、下面的代码段中,执行之后i 和j 的值是什么? ( B ) int i = 1; int j; j = i++*2+3*--i; A . 1, 2 B . 1, 5 C . 2, 1 D . 2, 2 5、下面哪条语句把方法声明为抽象的公共方法?( B ) A. public abstract method(); B. public abstract void method(); C. public abstract void method(){} D. public void method() extends abstract;

6、下面关于java 中类的说法哪个是不正确的?( C ) A. 类体中只能有变量定义和成员方法的定义,不能有其他语句。 B. 构造函数是类中的特殊方法。 C?类一定要声明为public的,才可以执行。 D. —个java文件中可以有多个class定义。 7、假设A类有如下定义,设a是A类的一个实例,下列语句调用哪个是错误的? ( C ) class A { int i; static String s; void method1() { } static void method2() { } } A、; B 、(); C. (); D 、() 8、容器被重新设置大小后,哪种布局管理器的容器中的组件大小不随容器大小的变化而改 变?( B ) A、CardLayout B 、FlowLayout C 、BorderLayout D 、GridLayout 9、下列哪个用户图形界面组件在软件安装程序中是常见的? ( C ) A.滑块 B. 进度条 C.按钮 D. 标签

相关主题