文档库 最新最全的文档下载
当前位置:文档库 › java单选题库 博学谷

java单选题库 博学谷

java单选题库 博学谷
java单选题库 博学谷

一、单选题

1.Java属于以下哪种语言?()

A. 机器语言

B. 汇编语言

C. 高级语言

D. 以上都不对

答案:C

解析:Java是一门高级编程语言

考察点:第一章Java开发入门

题目难度:★☆☆☆容易

2.下列目录中,哪一个是用来存放JDK核心源代码的?

A. lib目录

B. src目录

C. jre目录

D. include目录

答案:B

解析:JDK核心源代码存放在src文件夹下

考察点:第一章Java开发入门

题目难度:★☆☆☆容易

3.下面命令中,可以用来正确执行HelloWorld案例的是()

A. java HelloWorld

B. java HelloWorld.java

C. javac HelloWorld

D. javac HelloWorld.java

答案:A

解析:java命令负责运行编译后的.class文件,不需要文件后缀名。

考察点:第一章Java开发入门

题目难度:★☆☆☆容易

4.下面关于配置path环境变量作用的说法中,正确的是()

A. 在任意目录可以使用javac和java命令

B. 在任意目录下可以使用class文件

C. 在任意目录可以使用记事本

D. 在任意目录下可以使用扫雷游戏

答案:A

解析:path环境变量的作用是在任意目录下都可以使用javac和java命令。考察点:第一章Java开发入门

题目难度:★☆☆☆容易

5.下列选项中,可以正确配置classpath的命令是()

A. set classpath =C:\Program Files\Java\jdk1.7.0_15\bin

B. set classpath : C:\Program Files\Java\jdk1.7.0_15\bin

C. classpath set =C:\Program Files\Java\jdk1.7.0_15\bin

D. classpath set : C:\Program Files\Java\jdk1.7.0_15\bin

答案:A

解析:配置classpath的命令是set classpath=xxx,并且等于号两边不要有空格。

考察点:第一章Java开发入门

题目难度:★☆☆☆容易

6.下面选项中,完全面向对象的编程语言是?()

A. C

B. COBOL

C. JA V A

D. FORTRAN

答案:C

解析:Java语言全面支持动态绑定,而C++语言只对虚函数使用动态绑定。总之,Java语言是一个纯粹的面向对象程序设计语言

考察点:第一章Java开发入门

题目难度:★☆☆☆容易

7.

是打发

A. 1

B. 2

C. 3

D. 4

答案:A

解析:

放到

考察点:第一章Java开发入门

题目难度:★★☆☆一般

8.下列关于Java特点的描述中,错误的是?

A. Java语言不支持指针

B. Java具有自动垃圾回收的机制

C. Java只能运行在Window和Linux平台

D. Java允许多个线程同时执行

答案:C

解析:JA V A是一门面向对象的语言,它没有指针的概念,并提供了自动垃圾回收的机制,具有跨平台,多线程等特点。

考察点:第一章Java开发入门

题目难度:★★☆☆一般

9.下列关于JDK、JRE和JVM关系的描述中,正确的是

A. JDK中包含了JRE,JVM中包含了JRE。

B. JRE中包含了JDK,JDK中包含了JVM。

C. JRE中包含了JDK,JVM中包含了JRE。

D. JDK中包含了JRE,JRE中包含了JVM。

答案:D

解析:JVM是Java虚拟机,JRE是Java程序的运行时环境,JDK是Java程序的编译环境,包含范围递增。所以从小到大一次是JVM—JRE—JDK。

考察点:第一章Java开发入门

题目难度:★★☆☆一般

10.下列关于JDK安装的说法中,错误的是?

A. Oracle公司提供了多种操作系统的JDK

B. 开发工具中已经包含了一个JRE,因此可以选择不再安装公共的JRE环境

C. 在安装JDK过程中,源代码指的是Java公共的API类

D. 开发工具是JDK中的核心功能模块,因此无论是否进行Java程序开发都必须安装

答案:D

解析:只有开发Java程序时,才需要安装开发工具,如果只是运行Java程序,安装JRE即可。

考察点:第一章Java开发入门

题目难度:★★☆☆一般

11.下面关于classpath的说法中,错误的是()。

A. classpath和path环境变量的查看与配置的方式完全相同。

B. 为了让Java虚拟机能找到所需的class文件,就需要对classpath环境变量进行设置。

C. 从JDK5.0开始,如果classpath环境变量没有进行设置,Java虚拟机会自动将其设置为“.”,也就是当前目录。

D. 在命令行窗口中配置了classpath后,重新打开新命令行窗口依然生效

答案:D

解析:在命令行窗口设置的classpath只对当前窗口有效

考察点:第一章Java开发入门

题目难度:★☆☆☆容易

12.下列关于JDK的说法中,错误的是?

A. JDK是Java开发工具包的简称

B. JDK包括Java编译器、Java文档生成工具、Java打包工具等

C. 安装JDK后,还需要单独安装JRE

D. JDK是整个Java的核心

答案:C

解析:SUN公司提供了一套Java开发环境,简称JDK(Java Development Kit),它是整个Java 的核心,其中包括Java编译器、Java运行工具、Java文档生成工具、Java打包工具等。JDK 工具中自带了一个JRE工具,也就是说开发环境中包含运行环境,这样一来,开发人员只需要在计算机上安装JDK即可,不需要专门安装JRE工具了。

考察点:第一章Java开发入门

题目难度:★★☆☆一般

13.下列目录中,哪一个是用来存放JDK可执行程序的。()

A. db目录

B. jre目录

C. lib目录

D. bin目录

答案:D

解析:JDK中可执行程序都放在bin目录下。

考察点:第一章Java开发入门

题目难度:★☆☆☆容易

14.在JDK安装目录下,用于存放可执行程序的文件夹是?

A. bin

B. jre

C. lib

D. db

答案:A

解析:bin目录用于存放一些可执行程序,如javac.exe(Java编译器)、java.exe(Java运行工具)、jar.exe(打包工具)和javadoc.exe(文档生成工具)等。

考察点:第一章Java开发入门

题目难度:★☆☆☆容易

15.如果jdk的安装路径为:c:\jdk,若想在命令窗口中任何当前路径下,都可以直接使用javac 和java命令,需要将环境变量path设置为以下哪个选项

A. c:\jdk;

B. c:\jdk\bin;

C. c:\jre\bin;

D. c:\jre;

答案:B

解析:path环境必须设为javac.exe和java.exe的上一级目录bin

考察点:第一章Java开发入门

题目难度:★★★★难

16.下列Java命令中,哪一个可以编译HelloWorld.java文件?

A. java HelloWorld

B. java HelloWorld.java

C. javac HelloWorld

D. javac HelloWorld.java

答案:D

解析:javac命令用于编译.java文件;java命令用户解析.class文件。

考察点:第一章Java开发入门

题目难度:★☆☆☆容易

17.下列关于Java语言的描述中,错误的是?()

A. Java语言是一门面向对象的编程语言

B. Java是一门与平台无关的编程语言

C. Java具有JavaSE、JavaME和JavaEE三大平台

D. Java是一门介于汇编和高级之间的语言

答案:D

解析:Java是一门高级语言,它的开发与平台无关,采用的是面向对象的编程思想。

考察点:第一章Java开发入门

题目难度:★☆☆☆容易

18.下面关于javac命令作用的描述中,正确的是

A. 可以执行java程序

B. 可以将编写好的Java文件编译成.class文件

C. 可以把文件压缩

D. 可以把数据打包

答案:B

解析:javac命令将java文件编译成java字节码文件。

考察点:第一章Java开发入门

题目难度:★☆☆☆容易

19.以下关于java命令作用的描述中,正确的是

A. 它专门负责解析由Java编译器生成的.class文件

B. 它可以将编写好的Java文件编译成.class文件

C. 可以把文件压缩

D. 可以把数据打包

答案:A

解析:java命令负责运行编译后的.class文件。

考察点:第一章Java开发入门

题目难度:★☆☆☆容易

20.安装好JDK后,在其bin目录下有许多exe可执行文件,其中java.exe命令的作用是以下哪一种()

A. Java文档制作工具

B. Java解释器

C. Java编译器

D. Java启动器

答案:B

解析:

考察点:第一章Java开发入门

题目难度:★★☆☆一般

21.下列关于classpath环境变量的说法中,哪一个是正确的

A. classpath配置一次后可永久使用

B. 没有classpath环境变量就不能运行Java程序

C. classpath环境变量可以让虚拟机找到class文件的目录

D. 查看当前classpath配置的命令是:classpath

答案:C

解析:classpath环境变量可以让虚拟机找到class文件目录,没有配置classpath环境变量时,java虚拟机会自动将其设置为“.”。查看当前classpath的命令是set classpath;

考察点:第一章Java开发入门

题目难度:★☆☆☆容易

22.下面关于path和classpath的说法中,错误的是()

A. path用来指定java 虚拟机(JVM) 所在的目录

B. classpath用来指定我们自己所写的或要用到的类文件(.jar文件) 所在的目录

C. 在dos命令行中,classpath和path环境变量的查看与配置的方式不相同

D. 只要设置了classpath 这个环境变量系统就不会再在当前目录下查询某个类

答案:C

解析:classpath和path环境变量的查看与配置的方式完全相同,都是通过set关键字实现的。考察点:第一章Java开发入门

题目难度:★☆☆☆容易

一、单选题

1.下列选项中,哪一个是单行注释的符号?()

A. \\

B. //

C. /

D. \

答案:B

解析:// 双斜杠表示注释单行代码

考察点:第二章Java编程基础

题目难度:★☆☆☆容易

2.以下标识符中,不合法的是

A. user

B. $inner

C. class

D. login_1

答案:C

解析:class为java中的关键字

考察点:第二章Java编程基础

题目难度:★☆☆☆容易

3.下列选项中,用于引入包的关键字是

A. class

B. import

C. package

D. static

答案:B

解析:import关键字的作用是引入包

考察点:第二章Java编程基础

题目难度:★☆☆☆容易

4.下列选项中,属于浮点数常量的是?()

A. 198

B. 2e3f

C. true

D. null

答案:B

解析:198属于整型常量,true属于布尔常量,null属于null常量

考察点:第二章Java编程基础

题目难度:★☆☆☆容易

5.以下关于变量的定义,正确的是()

A. int a=10;

B. b=2;

C. int=20;

D. int a;b=a+10;

答案:A

解析:变量定义的基本格式数据类型变量名=值;变量一定要先初始化后才可以使用。考察点:第二章Java编程基础

题目难度:★☆☆☆容易

6.下列选项中,按照箭头方向,不可以进行自动类型转换的是

A. byte →int

B. int →long

C. double →long

D. short →int

答案:C

解析:类型转换过程中,只能范围小的自动转成范围大的。double范围大于long

考察点:第二章Java编程基础

题目难度:★☆☆☆容易

7.下列关于变量作用域的说法中,正确的是

A. 在main()方法中任何位置定义的变量,其作用域为整个main()方法

B. 块中定义的变量,在块外也是可以使用的

C. 变量的作用域为:从定义处开始,到变量所在块结束位置

D. 变量的作用域不受块的限制

答案:C

解析:变量的作用域为:从定义处开始,到变量所在代码块结束位置

考察点:第二章Java编程基础

题目难度:★☆☆☆容易

8.表达式7%(-3)的运算结果为

A. -2

B. -1

C. 2

D. 1

答案:D

解析:在进行取模(%)运算时,运算结果的正负取决于被模数(%左边的数)的符号,与模数(%右边的数)的符号无关

考察点:第二章Java编程基础

题目难度:★☆☆☆容易

9.下列选项中,不属于赋值运算符的是

A. -=

B. =

C. ==

D. *=

答案:C

解析:选项C属于比较运算符,其他三项属于赋值运算符

考察点:第二章Java编程基础

题目难度:★☆☆☆容易

10.下列选项中,不属于比较运算符的是

A. =

B. ==

C. <

D. <=

答案:A

解析:“=”属于赋值运算符,不属于比较运算符

考察点:第二章Java编程基础

题目难度:★☆☆☆容易

11.下面选项中,哪个是短路与运算符()

A. &

B. &&

C. |

D. ||

答案:B

解析:运算符“&”和“&&”都表示与操作,当且仅当运算符两边的操作数都为true时,其结果才为true,否则结果为false。当运算符“&”和“&&”的右边为表达式时,两者在使用上还有一定的区别。在使用“&”进行运算时,不论左边为true或者false,右边的表达式都会进行运算。如果使用“&&”进行运算,当左边为false时,右边的表达式不会进行运

算,因此“&&”被称作短路与

考察点:第二章Java编程基础

题目难度:★☆☆☆容易

12.将十进制的6与11进行异或运算的结果为

A. 11

B. 12

C. 13

D. 14

答案:C

解析:位运算符“^”是将参与运算的两个二进制数进行“异或”运算,如果二进制位相同,则值为0,否则为1。然后将得出的二进制数转化成对应的整数值

考察点:第二章Java编程基础

题目难度:★☆☆☆容易

13.请阅读下面的程序

public class Example03 {

public static void main(String[] args) {

int x = 8;

if (x > 5) {

System.out.println(\"a\");

} else {

System.out.println(\"b\");

}

}

}

程序的运行结果是?()

A. true

B. false

C. a

D. b

答案:C

解析:因为判断条件8>5成立,所以{}中的语句会被执行,输出a

考察点:第二章Java编程基础

题目难度:★☆☆☆容易

14.请阅读下面的程序

public class Test {

public static void main(String[] args) {

int temp = 0;

for (int i = 1; i < 5; i++) {

for (int j = 0; j < i; j++) {

temp++;

}

}

System.out.println(temp);

}

}

下列选项中,哪一个是正确的运行结果()

A. 5

B. 9

C. 10

D. 15

答案:C

解析:嵌套for循环,依次实现1,2,3,4,5以内数字的叠加运算。外层for循环,每次循环后temp的值依次为:1,3,6,10;

考察点:第二章Java编程基础

题目难度:★☆☆☆容易

15.关于continue语句的使用范围,下列说法正确的是

A. continue语句可以在选择语句中使用

B. continue语句可以在条件语句中使用

C. continue语句可以在循环语句中使用

D. 不输出任何内容

答案:C

解析:continue语句只能在循环语句中使用

考察点:第二章Java编程基础

题目难度:★☆☆☆容易

16.声明一个数组,__[ ] a = new String[]{};空格处应该填写的的内容为()

A. int

B. double

C. String

D. string

答案:C

解析:根据类型[] 数组名= new 类型[]{元素,元素,……};的格式,此处需要填String 考察点:第二章Java编程基础

题目难度:★☆☆☆容易

17.下列选项中关于二维数组的定义,格式错误的是()

A. int[][] arr = new int[3][4]

B. int[][] arr = new int[3][]

C. int[][] arr = new int[][4]

D. int[][] arr = {{1,2},{3,4,5},{6}}

答案:C

解析:选项3错误,因为该选项没有给出二维数组的长度

考察点:第二章Java编程基础

题目难度:★☆☆☆容易

18.下列命令中,可以将文档注释提取出来生成帮助文档的是()

A. javac

B. java

C. javadoc

D. jar

答案:C

解析:可以使用javadoc命令将文档注释提取出来生成帮助文档

考察点:第二章Java编程基础

题目难度:★★☆☆一般

19.下面选项中,哪一个是合法的标识符

A. hello world

B. 1Demo

C. _3_

D. class

答案:C

解析:标识符可以由任意顺序的大小写字母、数字、下划线(_)和美元符号($)组成,但标识符不能以数字开头,不能是Java中的关键字

考察点:第二章Java编程基础

题目难度:★★☆☆一般

20.下面选项中,哪一个不是Java中的关键字

A. sizeof

B. const

C. public

D. goto

答案:A

解析:sizeof不属于Java语言中的关键字

考察点:第二章Java编程基础

题目难度:★★☆☆一般

21.下列选项中,哪一个是十进制数6的二进制值()

A. 111

B. 101

C. 110

D. 011

答案:C

解析:十进制转换成二进制就是一个除以2取余数的过程。把要转换的数,除以2,得到商和余数,将商继续除以2,直到商为0。最后将所有余数倒序排列,得到数就是转换结果

考察点:第二章Java编程基础

题目难度:★★☆☆一般

22.下列转义字符中,不合法的是()

A. '\n'

B. '\x'

C. '\r'

D. '\t'

答案:B

解析:Java中的转义字符有\n、\r、\t、\b、\'、\\"、\\等

考察点:第二章Java编程基础

题目难度:★★☆☆一般

23.下列字符串常量中,哪一个是错误的()

A. “abc”

B. “12?12”

C. “12”12”

D. “”

答案:C

解析:字符串常量用于表示一串连续的字符,一个字符串常量要用一对英文半角格式的双引号(”“)引起来,一个字符串可以包含一个字符或多个字符,也可以不包含任何字符,但不能包含特殊字符,例如在字符串中表示引号(”),需要用转义字符(\)。

考察点:第二章Java编程基础

题目难度:★★☆☆一般

24.关于变量类型转换的描述中,正确的是

A. 只有数据类型相同的数据才能进行运算

B. byte类型和short类型的数据是不能一起运算的

C. 两个byte类型数据一起运算时会把先自动提升到int类型再运算

D. 两个整型在一起运算时,结果一定是int

答案:C

解析:byte类型和short类型的数据一起运算时会把先自动提升到int类型,再运算

考察点:第二章Java编程基础

题目难度:★★☆☆一般

25.请阅读下列示例代码,选择程序的输出结果

int a = 1;

int b = a++;

int c = ++a;

int d = a++ + ++a;

System.out.print(a + \",\" + b + \",\" + c + \",\" + d);

A. 5,1,3,9

B. 5,2,3,9

C. 5,1,2,9

D. 5,1,3,8

答案:D

解析:++在前表示先运行自加运算,++在后表示后运行自加运算

考察点:第二章Java编程基础

题目难度:★★☆☆一般

26.下列选项中,哪个是程序的运行结果

class Test

{

public static void main(String[] args)

{

int a = 3;

int b = 6;

System.out.print(a==b);

System.out.print(a

System.out.print(a!=b);

System.out.print(a>=b);

}

}

A. false false true false

B. false false true true

C. false true true false

D. true false false true

答案:C

解析:3==6(错),3<6(对),3!=6(对),3>=6(错)

考察点:第二章Java编程基础

题目难度:★★☆☆一般

27.下列关于浮点型数据的定义,哪一个不能通过编译()

A. double a=12.45;

B. float b=12.45;

C. double c=100;

D. float d=100;

答案:B

解析:float类型的数据在定义浮点型数据时,必须在后面加上f或F.double类型的数据在定义时可以在后面加上d或D,也可以不加。

考察点:第二章Java编程基础

题目难度:★★☆☆一般

28.题号:请先阅读下面的代码。

int x = 1;

int y = 2;

if (x % 2 == 0) {

y++;

} else {

y--;

}

System.out.println(\"y=\" + y);

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

A. 1

B. 2

C. 3

答案:A

解析:1 % 2不为0,所以进入到else语句,2--,所以答案为A 考察点:第二章Java编程基础

题目难度:★★☆☆一般

29.请阅读下面的程序

public class SwitchDemo3 {

public static void main(String[] args) {

char c = …B?;

switch ? {

case …A?:

System.out.println(“优”);

break;

case …B?:

System.out.println(“良”);

break;

case …C?:

System.out.println(“差”);

break;

}

}

}

下列选项中,哪一个才是程序的运行结果

A. 优

B. 良

C. 差

D. 编译失败

答案:B

解析:char c=’B’与case ‘B’相匹配,因此输出结果为“良”考察点:第二章Java编程基础

题目难度:★★☆☆一般

30.下列关于while语句的描述中,正确的是

A. while语句循环体中可以没有语句

B. while语句的循环条件可以是整型变量

C. while语句的循环体必须使用大括号

D. while语句的循环体至少被执行一次

答案:A

解析:while语句的循环条件必须是boolean类型的while语句的循环体中只有一条语句时可以不用大括号while语句的循环条件不满足时,循环体中的内容不执行考察点:第二章Java编程基础

题目难度:★★☆☆一般

31.请阅读下面的程序

public class Test {

public static void main(String[] args) {

int sum = 0;

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

if (i % 2 == 1) {

continue;

}

sum += i;

}

System.out.println(\"sum = \" + sum);

}

}

sum的值为()

A. 1050

B. 2550

C. 2500

D. 以上答案都不对

答案:B

解析:程序计算的是1到100间的偶数和,答案为2550 考察点:第二章Java编程基础

题目难度:★★☆☆一般

32.请阅读下面的程序

public class Test {

public static void main(String[] args) {

int temp = 0;

for (int i = 1; i < 5; i++) {

for (int j = 0; j < i; j++) {

temp++;

}

}

System.out.println(temp);

}

}

下列选项中,哪个是程序的运行结果()

A. 5

B. 9

C. 10

D. 15

答案:C

解析:循环结束后temp的值为10

考察点:第二章Java编程基础

题目难度:★★☆☆一般

33.请阅读下面的程序

Public class Test {

public static void main(String[] args) {

int a = 0;

int b = 0;

for (int i = 1; i <= 5; i++) {

a = i % 2;

while (a-- >= 0) {

b++;

}

}

System.out.println(\"a=\" + a + \",b=\"+ b);

}

}

下列选项中,哪一个是正确的运行结果()

A. a=8,b=-2

B. a=-2,b=8

C. a=3,b=0

D. a=0,b=3

答案:B

解析:本题中有两个循环语句,分别是外层循环的for语句和内层循环的while语句,首先程序会执行for循环中的语句,并执行循环体中的表达式a=i%2,计算出a的值,然后在进入while循环计算b的值,循环往复直到外层循环条件i>5为止

考察点:第二章Java编程基础

题目难度:★★☆☆一般

34.阅读下面的程序

public class Test {

public static void main(String[] args) {

for(int x = 0 ; x <=3 ; x++){

continue;

System.out.print(x%2);

}

}

}

运行结果正确的是

A. 跳出循环,无输出

B. 0121

C. 01

D. 0123

答案:A

解析:continue语句的作用是终止本次循环,因此contine后的代码永远不会被执行,都是无效代码

考察点:第二章Java编程基础

题目难度:★★☆☆一般

35.阅读下面的代码片段

public static int add(int a,int b) {

return a + b;

}

下列选项中,可以在main()方法中调用add()方法的是

A. int num = add(1.0,2.0);

B. int num = add(1,2);

C. int num = add(true,flase);

D. int num = add("1", "2");

答案:B

解析:调用add方法时,传入参数的数据类型必须和方法的形参类型相同

考察点:第二章Java编程基础

题目难度:★★☆☆一般

36.关于方法的递归,以下说法正确的是

A. 方法递归就是指在一个方法的内部调用自身的过程

B. 方法递归其实就是调用其它方法

C. 方法递归是指方法的返回值不同

D. 以上说法都不对

答案:A

解析:方法的递归是指在一个方法的内部调用自身的过程,而且必须要有结束条件,不然就会陷入无限递归的状态,永远无法结束调用

考察点:第二章Java编程基础

题目难度:★★☆☆一般

37.public class Example01 {

public static void main(String[] args) {

int[] arr = { 4, 1, 6, 3, 9, 8 }; // 定义一个数组

int minIndex = 0; //初始时设第1个角标处的值为最小值

for (int i = 1; i < arr.length; i++) {

if (______) {

minIndex = i;

}

}

System.out.println(\"数组中的最小值为:\"+arr[minIndex]);

}

}

请问在上述程序的横线处填写下列哪段代码,可以求到数组的最小值()

A. i < minIndex

B. arr[i] < arr[minIndex]

C. arr[i] > arr[minIndex]

D. i > minIndex

答案:B

解析:求最小值比较的不是角标大小,而是数组中元素的大小

考察点:第二章Java编程基础

题目难度:★★☆☆一般

38.已知类的继承关系如下:

class A

class B extends A

class C extends A

则以下语句中能够通过编译的是?()

A. A a=new B();

B. C c=new B();

C. C c=new A();

D. B b=new C();

答案:A

解析:假设A为犬类,B为狗,C为狼,那么狗当然属于犬类对象

考察点:第二章Java编程基础

题目难度:★★☆☆一般

39.若二维数组int arr[][]={{1,2,3},{4,5,6},{7,8}};,则arr[1][2]的值是()

A. 2

B. 5

C. 6

D. 0

答案:C

解析:数组角标从0开始计数,arr[1][2]表示的是二维数组中第2个一维数组中的第3个元素的值,因此答案是C

考察点:第二章Java编程基础

题目难度:★★☆☆一般

40.下列选项中,按照箭头方向,需要进行强制类型转换的是

A. double ←float

B. float ←long

C. int ←char

D. char ←byte

答案:D

解析:byte是整数型变量,取值范围小于char,但是char是字符型变量,所以需要强制转换

考察点:第二章Java编程基础

题目难度:★★☆☆一般

41.以下哪个选项可以正确创建一个长度为3的二维数组()

A. new int [2][3];

B. new int[3][];

C. new int[][3];

D. 以上答案都不对

答案:B

解析:

考察点:第二章Java编程基础

题目难度:★☆☆☆容易

42.阅读下列代码:System.out.println(“Hello”+ 9 + 1);

下列选项中,哪个是正确的输出结果()

A. Hello91

B. Hello10

C. Compilation fails.

D. An exception is thrown at runtime

答案:A

解析:字符串常量与其他数据类型常量使用“+”进行操作时,返回结果还是字符串类型,因此输出Hello91。

考察点:第二章Java编程基础

题目难度:★★☆☆一般

43.下列关于方法的描述中,正确的是

A. 方法是对功能代码块的封装

B. 方法没有返回值时,返回值类型可以不写

C. 没有返回值的方法,不能有return语句

D. 方法是不可以没有参数的

答案:A

解析:如果方法没有返回值,则返回值类型要定义为void。

方法中没有返回值也可以使用return语句,格式为return。

方法中可以定义参数,也可以不定义参数。

考察点:第二章Java编程基础

题目难度:★★☆☆一般

44.下列选项中,属于布尔常量的是?()

A. 198

B. 2e3f

C. true

D. null

答案:C

解析:198属于整型常量,2e3f属于浮点数常量,null属于null常量

考察点:第二章Java编程基础

题目难度:★☆☆☆容易

45.下列选项中,按照箭头方向,需要进行强制类型转换的是

A. int ←short

B. int ←byte

C. int ←char

D. int ←float

答案:D

解析:类型转换过程中,范围大的需要强制转换成范围小的

考察点:第二章Java编程基础

题目难度:★★☆☆一般

46.int a[ ]={45,4,67,23,65,87,34,52,56};数组中a[5]的值为()

A. 23

B. 45

C. 65

D. 87

答案:D

解析:数组的索引值从0开始,a[5]表示第6个元素即87

考察点:第二章Java编程基础

题目难度:★☆☆☆容易

47.下列选项中,哪个是八进制043的十六进制表示形式()

A. 0x43

B. 0x23

C. 23

D. 0x32

答案:B

解析:十六进制数字以0x或者0X开头,八进制以3个二进制位为一个单元,而十六进制以4个二进制位为一个单元计算每一位数。运算过程:八进制043 ->二进制0010 0011 -> 十六进制0x23

考察点:第二章Java编程基础

java期末考试复习题及答案

《Java程序设计》课程试卷 1.使用Java语言编写的源程序保存时的文件扩展名是(B )。 (A).class (B).java (C).cpp (D).txt 2.设int a=-2,则表达式a>>>3的值为( C )。 (A)0 (B)3 (C)8 (D)-1 3.设有数组的定义int[] a = new int[3],则下面对数组元素的引用错误的是( C )。 (A)a[0]; (B)a[]; (C)a[3]; (D)int i=1;a[i]; 4.在类的定义中可以有两个同名函数,这种现象称为函数( D )。 ) (A)封装(B)继承(C)覆盖(D)重载 5.在类的定义中构造函数的作用是( D )。 (A)保护成员变量(B)读取类的成员变量(C)描述类的特征(D)初始化成员变量 6.下面关键字中,哪一个不是用于异常处理语句(B )。 (A)try (B)break (C)catch (D)finally 7.类与对象的关系是(A )。 (A)类是对象的抽象(B)对象是类的抽象(C)对象是类的子类(D)类是对象的具体实例 8.下面哪一个是Java中不合法的标识符(D )。 (A)$persons (B)twoNum (C)_myVar (D)*point 9.为AB类的一个无形式参数无返回值的方法method书写方法头,使得使用类名AB作为前缀就可以调用它,该方法头的形式为( A )。 (A)static void method( ) (B)public void method( ) 、 (C)final void method( ) (D)abstract void method( ) 10.欲构造ArrayList类的一个实例,此类继承了List接口,下列哪个方法是正确的( C )。 (A)ArrayList myList=new Object( ) (B)List myList=new ArrayList( ) (C)ArrayList myList=new List( ) (D)List myList=new List( ) 源文件和编译后的文件扩展名分别为( B ) (A) .class和.java (B).java和.class (C).class和.class (D) .java和.java 12.在Java Applet程序用户自定义的Applet子类中,一般需要重载父类的( D )方法来完成一些画图操作。> (A) start( ) (B) stop( ) (C) init( ) (D) paint( ) 13.对于一个Java源文件,import, class定义以及package正确的顺序是:( A ) (A) package,import,class (B) class,import,package (C) import,package,class (D) package,class,import 14.下面哪个是非法的:( D ) (A) int I = 32; (B) float f = ; (C) double d = ; (D) char c = ‘u’;如果一个类的成员变量只能在所在类中使用,则该成员变量必须使用的修饰是( C ) (A) public (B) protected (C) private(D) static 17.下面关于main方法说明正确的是( B ) (A) public main(String args[ ]) (B) public static void main(String args[ ]) (C) private static void main(String args[ ]) (D) void main() | 18.哪个关键字可以对对象加互斥锁( B ) (A) transient (B) synchronized (C) serialize (D) static 19.关于抽象方法的说法正确的是( D ) (A)可以有方法体(B) 可以出现在非抽象类中 (C) 是没有方法体的方法(D) 抽象类中的方法都是抽象方法 包的File类是( B ) (A)字符流类(B) 字节流类(C) 对象流类(D) 非流类 21.Java application中的主类需包含main方法,以下哪项是main方法的正确形参( B ) A、String args B、String args[] C、Char arg D、StringBuffer args[] < 22.以下代码段执行后的输出结果为( A ) int x=-3;int y=-10; 、-1B、2 C、1 D、3

大学JAVA期末考试试题带答案

《JA V A程序设计》期末考试试题(三 一、单项选择题 1、如下哪个是Java中的标识符(D A、public B、super C、3number D、width 2、如下哪个是Java中的标识符(A A、fieldname B、super C、3number D、#number 3、已知如下定义:String s = "story"; 下面哪个语句不是合法的( C A、s += "books"; B、s = s + 100; C、int len = s.length; D、String t = s + “abc”; 4、如下哪个是Java中有效的关键字( C A、name

B、hello C、false D、good 5、下面的代码段执行之后count的值是什么( D 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、定义一个类,必须使用的关键字是( B A、public B、class C、interface D、static 7、定义一个接口必须使用的关键字是(C

A、public B、class C、interface D、static 8、如果容器组件p的布局是BorderLayout,则在p的下边中添加一个按钮b,应该使用的语句是(C A、p.add(b; B、p.add(b,"North"; C、p.add(b,"South"; D、b.add(p,"North"; 9、声明并创建一个按钮对象b,应该使用的语句是(A A、Button b=new Button(; B、button b=new button(; C、Button b=new b(; D、b.setLabel(“确定”; 10、Frame对象默认的布局管理器是(B A、FlowLayout B、BorderLayout C、CardLayout

大一Java复习题

一、熟练掌握以下基本基本概念: 1.Java虚拟机 2.类和对象、封装 3.构造方法 4.继承 5.接口 6.多态性 7.方法重载和方法重写 8.抽象类 9.异常 二、单选题 1. Java具有跨平台的特点,负责解释和执行字节码文件的是(B)。 A)垃圾自动回收器B)Java虚拟机 C)Java编译器D)多线程机制 2. Java中的数据类型分为基本类型和引用类型,下面哪个类型不属于引用类型 ( C )? A)int[] B)Integer C)char D)String 3.下面哪个赋值语句是错误的?( B ) A)int i = 100; B)float f = 100.0; C)String s = “Hello world”; D)char c = …\123?; 4.关于类和对象的叙述正确的是( A )。 A)Java中的类分为两大部分:系统定义的类和用户自定义的类 B)类的静态属性和全局变量的概念完全一样,只是表达形式不同 C)一个类至少要有一个属性和一个方法 D)类是对象的实例化 5.下列关键字中可作为类的修饰符是( C )。 A) private B) static C) abstract D) protected 6. 设B为已定义的类名,下面声明类B的对象b的语句中正确的是( D )。 A) float B b; B) public B b=B(); C) B b=new int(); D) B b=new B(); 7. Object类在哪个包中? ( D ) A) java.util B) java.io C) java.awt D) https://www.wendangku.net/doc/4d17639524.html,ng 8.在异常处理时,释放资源、关闭文件或关闭数据库等的操作一般是在( C )部分中完成。 A)try子句 B)catch子句 C)finally子句 D)throw子句 9. 下面哪一项不是合法的Java程序注释?( C ) A)/** comment */ B)/* comment */ C)/* comment D)// comment 10.设有下面两个类的定义: class Door { class House { //……Door door; } //…… }

Java考试试题

一、单选题(共60题,每小题1分,共60分) 1、Java JDK中调试器的命令是( )。 A.javac B.java C.jdb D.javah 2、运行jar文件中class文件需要在java命令后面加的参数为()。 A.-cp B -g C -d D -verbose 3、下面哪项在java中是不合法的标识符?() A.$user B.point C.You&me D._endline 4、下列哪一项不是Java保留字?() A.sizeof B.super C.abstract D.break 5、下列哪个布局管理器中的按钮位置有可能会根据Frame的大小改变而改变?() A.BorderLayout B.CardLayout C.GridLayout D.FlowLayout 6、下面哪些java语句会导致无限循环?( ) I、while (true) i = 0; II、while (false) i = 1; III、while (!false) i = 0; A、III only B、I and III only C、I only D、I, II and III 7、下面是Example.java文件的完整代码,请找出会产生编译错误的行()。 1) class BaseClass { 2) public String str; 3) public BaseClass(){ 4) System.out.println(“ok”);} 5) public BaseClass(String s){ 6) str=s;}} 7) class SubClass extends BaseClass{ 8) } 9) public class Example{ 10) public void method(){ 11) SubClass s=new SubClass(“hello”); 12) BaseClass b=new BaseClass(“world”); 13) }

java 试题

一、填空题1、Java的三大体系分别是_JavaSE_____、_JavaEE_____、_JavaME_____。 2、Java程序的运行环境简称之为JRE_____。 3、编译Java程序需要使用_javac_____命令。 4、javac.exe和java.exe两个可执行程序存放在JDK安装目录的bin______目录下。 5、path______环境变量用来存储Java的编译和运行工具所在的路径,而_classpath_____环境变量则用来保存保存Java虚拟机要运行的“.class”文件路径。 二、选择题 1、以下选项中,哪些属于JDK工具?(多选)ABCD A、Java编译器 B、Java运行工具 C、Java文档生成工具 D、Java打包工具 2、Java属于以下哪种语言?C A、机器语言B、汇编语言C、高级语言 3、下面哪种类型的文件可以在Java虚拟机中运行?D D、.class 4、安装好JDK后,在其bin目录下有许多exe可执行文件,其中java.exe命令的作用是以下哪一种?B A、Java文档制作工具B、Java解释器C、Java编译器 5、5、如果jdk的安装路径为:d:\jdk,若想在命令窗口中任何当前路径下,都可以直接使用javac和java命令,需要将环境变量path设置为以下哪个选项?B A.d:\jdk; B.d :\jdk\bin; C.d:\jre\bin; D.d:\jre; 三、问答题 1、简述Java的特点。面向对象、跨平台性、健壮性、安全性、可移植性、多线程性、动态性等。 2、2、简述JRE与JDK的区别JRE(Java Runtime Environment,Java运行时环境),它相当于操作系统部分,提供了Java程序运行时所需要的基本条件和许多Java基础类,例如,IO类、GUI控件类、网络类等。JRE是提供给普通用户使用的,如果你只想运行别人开发好的Java程序,那么,你的计算机上必须且只需安装JRE。JDK(Java Development Kit,Java 开发工具包),它包含编译工具、解释工具、文档制作工具、打包工具多种与开发相关的工具,是提供给Java开发人员使用的。初学者学习和使用Java语言时,首先必须下载和安装JDK。JDK中已经包含了JRE部分,初学者安装JDK后不必再去下载和安装JRE了。 第二章 、Java语言的八种基本数据类型有:byte字节型,占一个字节。short短整型,占两个字节。int整型,占4个字节。long长整型,占8个字节。float单精度浮点型,占4个字节。double 双精度浮点型,占8个字节。char字符型,占两个字节。boolean型,表示逻辑值,有true 和false两个值,分别占一个字节。 2、如果使用“&”在表达式之间进行连接,那么无论任何情况,“&”两边的表达式都会参与计算。如果使用“&&”进行连接,当“&&”左边的表达式为false,则不会执行其右边的表达式。例如定义int x = 2,y = 0; boolean b = x < y & x / 2 > 0表达是会发生被0除异常,因为x / y的表达式执行了。而boolean b = x < y & x / 2 > 0是不会出现这种异常的,因为x < y为false,表达式x / y不会执行。 3、方法重载指的是在一个类中可以声明多个同名的方法,而方法中参数的个数或者数据类型不一致。调用这些同名的方法时,JVM会根据实际参数的不同绑定到不同的方法 冒泡排序: public class Test03 { public static void main(String[] args) { int[] arr = { 25, 24, 12, 76, 101, 96, 28 }; for (int i = 0; i < arr.length - 1; i++) { // 定义内层循环for (int j = 0; j < arr.length - i - 1; j++) { if (arr[j] > arr[j + 1]) { // 比较相邻元素// 下面的三行代码用于交换两个元素int temp = arr[j]; arr[j] = arr[j + 1]; arr[j + 1] = temp; } } } for (int i = 0; i < arr.length; i++) { System.out.print(arr[i] + " "); // 打印元素和空格} }

java试题

1.随机产生20个50~100之间的整数,输出这20个数并找出最大数及最小数输出 public class Test1 { public static void main(String[] args) { int math[] = new int[20]; int max = 0;int min = 100; for(int i = 0;i<20;i++){ math[i] = (int)()*50+50); " "); } for(int i = 0;i<20;i++){ if(maxmath[i]) min=math[i]; } "max:"+max); "min:"+min); }} 2.创建一个图书类,类中包含的属性有:书名、作者、出版社;包含的方法有:构造方法,设置书籍状态,查看书籍状态。书籍状态有在馆和外借两种。 public class Test2 { public static void main(String[] args){ Book book=new Book("Java程序设计","李伟","清华大学出版社");

(true); ();}} class Book{ private String Bname; private String Aname; private String Baddress; Book(String Bname,StringAname,StringBaddress){ =Bname; =Aname; =Baddress;} privatebooleanzt; public void setzt(booleanzt){ =zt;} public void getzt(){ if(zt==true) "在馆"); else "外借");}} 3.设计一个Birthday类,其成员变量有:year,month,day;提供构造方法、输出Birthday对象值的方法和计算年龄的方法。编写程序测试这个类。 public class Test3 {

Java期末考试题及答案

J a v a期末考试题及答案 This manuscript was revised by the office on December 22, 2012

Java期末考试题

一、简答题(共8个题,每题5分,共40分) 1.java语言有哪些特点? (1)简单的 a)Java最初是为对家用电器进行集成控制而设计的一种语言,因此它必须简单明 了。 b)Java的风格类似于C++,因而C++程序员初次接触Java语言,就会感到很熟悉。 从某种意义上讲,Java语言是C及C++语言的一个变种。 c)Java摒弃了C++中容易引发程序错误的一些特性,如指针、结构、枚举以及内存 管理等。 d)Java提供了丰富的类库,可以帮助我们很方便的开发Java程序。 (2)面向对象的 面向对象可以说是Java最重要的特性,所以它支持继承、重载、多态等面向对象的特性。Java语言的设计是完全面向对象的,它不支持类似C语言那样的面向过程的程序设计技术。 (3)健壮的 Java致力于检查程序在编译和运行时的错误。Java也是一种强类型的语言,其类型检查比C++还要严格。类型检查帮助我们检查出许多开发早期出现的错误。Java 自己负责内存管理,提供了垃圾内存回收机制,有效的避免了C++中最头疼的内存泄漏问题。 (4)安全的 Java的安全性可从两个方面得到保证。一方面,在Java语言里,删除了指针和释放内存等C++功能,避免了非法内存操作。另一方面,通过Java的安全体系架构来确保Java代码的安全性。 从一开始,Java就被设计成能够防范各种袭击,包括:禁止运行时堆栈溢出。 例如,蠕虫等病毒常用的袭击手段;禁止在自己的处理空间之外破坏内存;未经授权禁止读写文件;许多安全特性相继不断的被加入Java中。 (5)解释的 Java代码是解释执行的,我们使用Java编译器将Java代码编译成字节码,这是一种中间代码,然后由Java解释器解释执行。而C++程序是编译执行的,C++程序代码被编译为本地机器指令,然后执行。

java基础考试题及答案

一、选择题(共30题,每题2分) 1.下面哪些是合法的标识符(多选题) A. $persons B. TwoUsers C. *point D. this E. _endline 答案A,B,E 分析Java的标识符可以以一个Unicode字符,下滑线(_),美元符($)开始,后续字符可以是前面的符号和数字,没有长度限制,大小写敏感,不能是保留字(this保留字)。 2.哪些是将一个十六进制值赋值给一个long型变量(单选题) A. long number = 345L; B. long number = 0345; C. long number = 0345L; D. long number = 0x345L 答案 D 分析十六进制数以0x开头,long型数以L(大小写均可,一般使用大写,因为小写

的l和数字1不易区分)。 3.下面的哪些程序片断可能导致错误(多选题) A. String s = "Gone with the wind"; String t = " good "; String k = s + t; B. String s = "Gone with the wind"; String t; t = s[3] + "one"; C. String s = "Gone with the wind"; String standard = (); D. String s = "home directory"; String t = s - "directory"; 答案B,D 分析 A:String类型可以直接使用+进行连接运算。 B:String是一种Object,而不是简单的字符数组,不能使用下标运算符取其值的某个元素,错误。

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中,在包com.db下定义一个类,要让包com.util下的所有类都可以访问这个类,这个类必须定义为()。(选择一项) a)protected b)private c)public d)friendly 4)在Java中,下列()语句不能通过编译。(选择一项) a) String s= “join”+ “was”+ “here”; b) String s= “join”+3; c) int a= 3+5 d) float f=5+5.5; 5) 在Java中下列()方法可以把JFrame的布局管理器设为FlowLayout类型(选择一项) a)jFrame.setLayout(new FlowLayout() ); b) jFrame.addLayout(new FlowLayout() ) c)jFrame.setFlowLayout() d)jFrame.addFlowLayout() 6)给定java代码如下,运行时,会产生()类型的异常。(选择一项) String s=null; s.concat(“abc”); a)ArithmeticException b)NullPointerException c)IOException d)EOFException 7) 在java中,()对象可以使用键/值的形式保存数据。(选择一项) a)ArrayList b) HashSet c) HashMap

大学《java程序设计》考试题库及答案

若有定义int a = 2,b = 2;则表达式(a++)+(++b)的值是()。 A. 5 监听器接口的方法返回值的类型是()。C. void 在浏览器中执行applet程序,以下选项中的哪个方法将被最先执行( )。 D. init() 以下哪个不是Java的原始数据类型() B. Boolean 向Applet传递参数的正确描述是()。C. C. PARAM name = "age,value = 20" 阅读下歹0代码; public class Test{ String s = "One World One Dream"; public static void main(String args[]){ System.out.println(s); } } 其运行结果是— C.编译时出错〃除非创建Text类的对象 如果容器组件p的布局是BorderLayout ,则在p的下边中添加一个按钮b ,应该使用的语句是()。 A. p.add(b,"South"); 编译和运行下面的应用程序,并在命令行界面输入12345 ,则回车后屏幕输出的结果是()。public class A { public static void main(String args[]) throws IOException{ BufferedReader buf = new BufferedReader( new I nputStreamReader(System.in)); String str = buf.readLine(); int x = Integ er.parseInt(str); System.out.println(x/100); } } B. 123 构造函数何时被调用?( ) B. 创建对象时 以下哪项可能包含菜单条()。 D. Frame 编译Java Application 源程序文件将产生相应的字节码文件,这些字节码文件 的扩展名为()。

java期末考试题

一、单选择题(每小题2分,共10分) 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、在Java Applet程序用户自定义的Applet子类中,一般需要重载父类的( )方法来完成一些画图操作。 A. start( ) B. stop( ) C. init( ) D. paint( ) 4、不允许作为类及类成员的访问控制符的是( )。 A. public B. private C. static D. protected 5、为AB类的一个无形式参数无返回值的方法method书写方法头,使得使用类名AB作为前缀就可以调用它,该方法头的形式为( )。 A. static void method( ) B. public void method( ) C. final void method( ) D. abstract void method( ) 二、填空题(每空格1分,共20分) 1、开发与运行Java程序需要经过的三个主要步骤为、 和。 2、如果一个Java Applet源程序文件只定义有一个类,该类的类名为MyApplet,则类MyApplet必须是类的子类并且存储该源程序文件的文件名为。 3、如果一个Java Applet程序文件中定义有3个类,则使用Sun公司的JDK编译 器编译该源程序文件将产生个文件名与类名相同而扩展名为的字节码文件。 4、在Java的基本数据类型中,char型采用Unicode编码方案,每个Unicode码占 用字节内存空间,这样,无论是中文字符还是英文字符,都是占 用字节内存空间。 5、设x = 2 ,则表达式( x + + )/3 的值是。 6、若x = 5,y = 10,则x < y和x >= y的逻辑值分别为和。 7、方法是一种仅有方法头,没有具体方法体和操作实现的方法,该方法必须在抽象类之中定义。方法是不能被当前类的子类重新定义的方法。

java期末考的大题都在这

1.按要求编写一个Java应用程序: (1)定义一个接口CanFly,描述会飞的方法public void fly()。 (2)分别定义类飞机和鸟,实现CanFly接口。 (3)定义一个测试类,测试飞机和鸟,在main方法中创建飞机对象和鸟对象,再定义一个makeFly()方法,其中让会飞的事物飞。 并在main方法中调用该方法,让飞机和鸟起飞。 interface CanFly { public void fly(); } class Plane implements CanFly{ public void fly() { System.out.println("Plain-fly"); } } class Bird implements CanFly{ public void fly() { System.out.println("Bird-fly"); } } class FlyTest { void makeFly(CanFly cf){ cf.fly(); } public static void main(String[] args) { Plane p = new Plane(); Bird b = new Bird(); FlyTest test = new FlyTest(); test.makeFly(p); test.makeFly(b); } } 3.完数P184-2 abstract class Number{ abstract void method(); }

class Perfect extends Number{ void method(){ System.out.println("2到1000的完数如下:"); int i, j, sum; for(i=2;i<=1000;i++){ sum=0; for(j=1;j<=i/2;j++){ if(i%j==0) sum=sum+j; } if(sum==i) System.out.println(i+" "); } System.out.println(); } } public class Test{ public static void main(String[] args){ Number n=new Perfect(); n.method(); n=new Prime(); n.method(); } } 4.按要求编写Java应用程序。 编写一个名为Test的主类,在主方法中定义一个大小为50的一维整型数组,数组名为x,数组中存放着{1,3,5,…,99}, 输出这个数组中的所有元素,每输出十个换一行. public class Test { public static void main(String[] args) { int[] x=new int[50]; int i,j; for(i=0;i<50;i++) { x[i]=2*i+1; if(i%10==0) { System.out.println(); } System.out.print(x[i]+" ");

java考试题库(大二期末考试必备)知识分享

j a v a考试题库(大二期末考试必备)

2.Serialist:服务端的java应用程序(可以生成动态的网页) 3.Jacobeans:一种在Java(包括JSP)中使用可重复使用的Java组件的技术规范 4.包(package):防止同名的类名产生冲突,所以封装在一个包下面 5.标识符:以字母开头的字母数字序列 6.关键字:java语言定义的,具有特定含义的单词 7.符号常量:指用关键字final声明的保存在程序中不能改变的数据 8.数据:能输入到计算机中并且能够被计算机接受的各种符号的集合 9.类型/数据类型:具有相同的逻辑意义的一组值得集合 10.变量:保存在程序中的可以改变数据 11.常量:保存在程序中的不能改变的数据 12.类型相容:两个不同的数据类型具有相同的性质,能够参加相同的运算,运算结果的数据类型为精度高的,范围 大的那种 13.隐式类型转换:java数据类型从低类型转换为高类型 14.显式类型转换:java数据类型从高类型转换为低类型 15.方法重载:让类以统一的方式处理不同类型数据的一种手段 16.递归:概念本身直接或间接的定义自己 17.类/对象:数据以及对数据的一组操作的封装体,而对象可以看做类的一个具体的实例 18.封装:将数据以及对数据的操作组合成一个类,但这个类能够提供与外部联系的方法又能够隐藏实现的细节 19.构造方法:创建类的一个实例并对实例的成员进行初始化 20.拷贝构造方法:创建新的对象初始化为形式参数的实例值,实现对象的复制 21.对象浅拷贝:不拷贝对象和数组的,只拷贝基本类型 22.对象深拷贝:对象,对象内部的引用均复制 23.继承(inherit):一个对象直接使用另一对象的属性和方法 24.多态(polymorphism):接口的多种不同的实现方式 25.重载(overload):一个类中的方法与另一个方法同名,但是参数表不同 26.覆盖(override):子类方法的名称、参数和返回类型必须与父类方法一致 27.抽象类:类中可能已经有一些方法的具体定义,但是接口就仅仅只能定义各个方法抽象类不能被实例化 28.最终类:把一个类的功能固定下来,不允许定义它的子类对其进行扩充 29.接口(interface):把所需成员组合起来,以封装一定功能的集合,不能实例化

java填空 简答 大题考试复习

一、填空题 1、Java程序需要经过的三个主要步骤为编辑源程序、 编译生成字节码和解释运行字节码。 2、在Java数据类型中,char型采用Unicode编码方案,每个Unicode码占 用2字节内存空间,中文字符还是英文字符都是占用2字节内存空间。 3、设x = 2 ,则表达式( x + + )/3 的值是0 。 5、抽象(abstract) 方法是一种仅有方法头,没有具体方法体和操作实现的方法,该方法必须在抽象类之中定义。最终(final)方法是不能被当前类的子类重新定义的方法。 6、创建一个名为MyPackage 的包的语句是package MyPackage ; , 该语句应该放在程序的位置为:应该在程序第一句。 7、在Java程序中,通过类的定义只能实现单重继承,但通过接口的定义可以实现多重继承关系。 二、简答题。 1.对象有哪些属性?什么是状态?什么是行为?对象就是对一组变量和相关方法的封装,其中变量表明了对象的状态,方法表明了对象具有的行为,通过对象的封装,实现了模块化和信息隐藏,通过对类的成员施加一定的访问权限,实现了类中成员的信息隐藏 2、什么是继承? 答:通过必要的说明能够实现某个类无需重新定义就拥有另一个类的某些属性和方法,并把这种关系称为继承,先定义的类称为父类,后定义的类称为子类,并且允许多层的继承关系。 3.类变量和实例变量有何区别? 答:由static修饰的变量称为类变量,当系统在程序中第一次遇到一个类时,便会拷贝一份所有的类变量在内存里。然后那些由此类产生的实例便可分享这些类变量。 实例变量指不是用static修饰的变量,可供实例方法使用。实例变量会复制于每一个从类产生的实例中。 4.请简述重载和重写的区别? 答:方法的重写和重载是Java多态性的不同表现。 重写是父类与子类之间多态性的一种表现,重载是一个类中多态性的一种表现。 如果在子类中定义某方法与其父类有相同的名称和参数,我们说该方法被重写子类的对象使用这个方法时,将调用子类中的定义,对它而言,父类中的定义如同被“屏蔽”了。如果在一个类中定义了多个同名的方法,它们或有不同的参数个数或有不同的参数类型,则称为方法的重载(Overloading)。Overloaded的方法是可以改变返回值的类型。 5..抽象类与接口? 答:抽象类与接口都用于抽象,但是抽象类(JA V A中)可以有自己的部分实现,而接口则完全是一个标识(同时有多重继承的功能). 一个类只能继承继承一个抽象类,而一个类却可以实现多个接口。接口中不能有非抽象方法,但抽象类中可以有。一个类能实现多个接口,但只能有一个父类。接口并不属于继承结构,它实际与继承无关,因此无关的类也可以实现同一个接口。 6.封装: 就是把数据和行为结合起在一个包中,并对对象使用者隐藏数据的实现过程,一个对象中的数据叫他的实例字段. 继承: 通过扩展一个类来获得一个新类叫继承(inheritance),而所有的类都是由Object根超类扩展而得. 构造方法是为对象初始化操作编写的方法,也类中的一种特殊方法,用它来定义对象的初始状态。在Java语言中的每个类都有构造方法,它也是由方法名、参数和方法体组成7.Error与Exception有什么区别? Error(错误)表示系统级的错误和程序不必处理的异常,是java运行环境中的内部错误或者硬件问题,比如,内存资源不足等,对于这种错误,程序基本无能为力,除了退出运行外别无选择。Exception(违例)表示需要捕捉或者需要程序进行处理的异常,它处理的是因为程序设计的瑕疵而引起的问题或者在外的输入等引起的一般性问题,是程序必须处理的。 8.多线程有几种实现方法,是什么?同步有几种实现方法,多线程有两种实现方法,分别是继承Thread类与实现Runnable 接口 同步的实现方面有两种,分别是synchronized,wait与notify 9.简述读写文本文件的基本步骤。 答①导入输入/输出包;②创建文件对象;③创建读出/写入操作的对象;④数据文件的读/写操作;⑤关闭文件。

Java工程师考试题(答案)

Java工程师考试题 一填空题(本大题10小题,每小题2分,共20分) 1.当Java对象____不再被程序引用_____时,将被垃圾回收器回收。 2.用POS方法的HTTP包,HTTP头与POS数据的分隔标志为__空格___ 3. JDBC常用的接口有 ___Driver_____,__Connection_____,__Statement_____,___Prep areStatement____,____ResultSet___. 4.对每个Java线程,都有各自独立的_____线程________空间。 5.在java中,char 型采用___unicode________编码方案,这样,无论是中文字符还是英文字符,都是占用__2____个字节的存空间. 6. JAVA的集合类主要分为三部 分:_____List_____,___Set______,___Map______. 7.关系型数据库的表之间存在有三种基本的关系类型:_一对一__,__一对多_,_多对多___. 8.在Struts框架的Web程序中.在Action类的__execute______方法中进行业务逻辑处理,并返回一个___String_______对象,控制权被交回___result组件______. 9.程序中实现多线程的方法有两种:继承Thread类和实现 __runnable____接口. I0.在jsP页面中,设置JavaBean的属性页面指令标签为___ _____.

二单选题(本大题30 小题,每小题2分.共60分〕 1.在JAVA中,如果父类中某些方法不包含任何逻辑,并且需要由子类重写.应该使用( c )关键字来声明父类的这些方法: A) final B) static C) abstract D) void 2.在JAVA中,已定义两个接口B和C,要定义一个实现这两个接口的类,以下语句正确的是(c) A) interface A extend B,C B) interface A implements B,C C) class A implements B,C D) class A implements B, implements C 3在JAVA接口中可以定义(bd )。 A) 静态方法B) 常量C) 构造方法D) 抽象方法 4.假设A有构造方法A (int a),则在类A的其他构造方法中调用该构造方法和语句格式应为(c)。 A) A(X) B) this.A(x) C) this(x) D) super(x) 5. 设x = 1 ,y = 2 , z = 3, 则表达式y+=z一一/++x 的值是(a )。 A) 3 B) 3.5 C) 4 D) 5 6,下列关于继承的说法哪个正确?(b). A)子类只继承父类public方法和属性: B)子类继承父类的非私有属性和方法: C)子类继承父类的方法,而不继承父类的属性: D) 子类将继承的所有的属性和方法. 7.在JAVA中.下列(c)做法可以得到Connection 对象和

JAVA综合考试题(一)

JAVA综合考试题 一、不定选择题(每题2分,共40分) 1、下面那几个函数是public void method(){}的重载函数?() A、public void method(int m){} B、public int method(){} C、public void method2(){} D、ublic int method(int m,float f){} 2、有关线程的哪些叙述是对的() A、旦一个线程被创建,它就立即开始运行。 B、用start()方法可以使一个线程成为可运行的,但是它不一定立即开始运行。 C、一个线程因为抢先机制而停止运行,它被放在可运行队列的前面。 D、个线程可能因为不同的原因停止并进入就绪状态。 3、下面的哪些声明是合法的?() A、ong1=499 B、nt i=4L C、loat f=1.1 D、ouble d=34.4 4、下述代码的执行结果是() class Super{public int getLength(){return4;}} public class Sub extends Super{ public long getLength(){return5;} public static void main(String[]args){ Super sooper=new Super();Super sub=new Sub(); System.out.printIn(sooper.getLength()+“,”+sub.getLength() };} A、,4 B、,5 C、,4 D、,5 E、码不能被编译

5、关于Java语言,下列描述正确的是() A、witch不能够作用在String类型上 B、ist,et,ap都继承自Collection接口 C、ava语言支持goto语句 D、C是垃圾收集器,程序员不用担心内存管理 6、下面的代码实现了设计模式中的什么模式() public class A{ private A instance; private A(){} public static A getInstance{ if(A==null) instance=new A(); return instance;} } A、Factory B、Abstract Factory C、Singleton D、Builder 7、关于线程设计,下列描述正确的是() A、线程对象必须实现Runnable接口 B、启动一个线程直接调用线程对象的run()方法 C、Java提供对多线程同步提供语言级的支持 D、一个线程可以包含多个进程 8、TCP通信建立在连接的基础上,TCP连接的建立要使用几次握手的过程() A、2 B、3 C、4 D、5 9、下面哪些是Thread类的方法() A、start() B、run() C、exit() D、getPriority() 10、下列说法正确的有() A、class中的constructor不可省略 B、constructor必须与class同名,但方法不能与class同名 C、constructor在一个对象被new时执行 D、一个class只能定义一个constructor 11、下面程序的运行结果() public static void main(String args[]){ Thread t=new Thread(){

相关文档