当前位置:文档之家› java单选题

java单选题

java单选题
java单选题

单选题

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

A、机器语言

B、汇编语言

C、高级语言

D、以上都不对

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

A、bin

B、jre

C、lib

D、db

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

A、java HelloWorld

B、java HelloWorld.java

C、javac HelloWorld

D、javac HelloWorld.java

4、以下关于java命令作用的描述中,正确的是A

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

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

C、可以把文件压缩

D、可以把数据打包

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

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

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

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

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

6、下面关于path和classpath的说法中,错误的是(C)

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

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

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

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

7、下面关于classpath的说法中,错误的是(D)。

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

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

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

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

8、下面哪种类型的文件可以在Java虚拟机中运行?(D)

A、.java

B、.jre

C、.exe

D、.class

9、阅读下段代码片段,选择正确的运行结果A

public static void main(String[] args) {

{

int a = 1;

System.out.print(a);

}

{

int a = 2;

System.out.print(a);

}

int a = 3;

System.out.print(a);

}

A、123

B、111

C、121

D、编译不通过

10、下面选项中,哪个是短路与运算符( B )

A、&

B、&&

C、|

D、||

11、关于表达式1234/1000 * 1000的运算结果,下列哪个选项是正确的(B )

A、1234

B、1000

C、1234.0

D、以上都不对

12、下面的运算符中,用于执行除法运算是哪个?A

A、/

B、\

C、%

D、*

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

A、new int [2][3];

B、new int[3][];

C、new int[][3];

D、以上答案都不对

14、下列选项中,不属于比较运算符的是A

A、=

B、==

C、<

D、<=

15、下列选项中,用于引入包的关键字是B

A、class

B、import

C、package

D、static

16、下列选项中,哪一个不能通过编译(D )

A、byte a=1;

B、short b=100;

C、int c='a';

D、long d=8888888888;

17、下列选项中,哪一个是多行注释符号?(D )

A、//* *//

B、/* /*

C、/ /

D、/* */

18、为了能让外界访问私有属性,需要提供一些使用( C )关键字修饰的公有方法。

A、void

B、default

C、private

D、public

19、下列修饰符中,哪个修饰内部类后,会使内部类会随着外部类的加载而加载。A

A、static

B、protected

C、public

D、private

20、阅读下列的程序

class Person{

static{

System.out.println(name);

}

private static String name = "hello";

}

class Demo{

public static void main(String[] args){

Person p = null;

}

}

下列关于程序运行结果的描述中,正确的是(D)

A、无结果输出

B、输出 null

C、输出 hello

D、编译失败

21、当一个类中成员变量和局部变量重名时,可以使用哪个关键字进行区分( B )

A、super

B、this

C、public

D、true

22、请阅读下面的程序,选择正确的运行结果。A

class Demo{

private static int x ;

public static void main(String[] args){

System.out.println(x++);

}

}

A、0

B、1

C、无结果

D、编译失败

23、下列关于构造方法的描述,错误的是( A )。

A、一个类中只能定义一个构造方法

B、一个类中可以定义多个构造方法

C、如果在一个类中定义有参的构造方法,jvm就不会提供默认的无参构造方法

D、构造方法的作用是用来给属性进行初始化的

A、一个类中只能定义一个空参数的构造方法

B、一个类中可以定义多个构造方法

C、如果在一个类中定义有参的构造方法,jvm就不会提供默认的无参构造方法

D、构造方法的作用是给属性初始化

24、下列修饰符中,成员内部类被( C )修饰后,可以被外界访问。

A、default

B、protected

C、public

D、private

25、下列关于类与对象的说法中,正确的是(C )

A、类可以看做是一个模型,可以用来创建对象

B、没有类,也可以创建对象

C、类是对某一类事物的抽象描述,而对象用于表示现实中该类事物的个体

D、以上说法都不对

26、在以下什么情况下,构造方法会被调用?B

A、类定义时

B、创建对象时

C、调用对象方法时

D、使用对象的变量时

27、“隐藏对象的属性和实现细节,仅对外提供公有的方法”描述的是面向对象的哪个特征( A )

A、封装

B、继承

C、多态

D、以上都不是

28、下列关键字中,用于创建类的实例对象的是( B )。

A、class

B、new

C、private

D、void

29、下列关于匿名内部类的描述,错误的是( D )

A、匿名内部类是内部类的简化形式

B、匿名内部类的前提是必须要继承父类或实现接口

C、匿名内部类的格式是"new 父类(参数列表) 或父接口(){}"

D、匿名内部类可以有构造方法

30、自定义运行时异常,必须继承自( C )类

A、Error

B、Exception

C、RuntimeException

D、Throwable

31、在下面哪种情况下,可以使用方法重写?( C )

A、父类方法中的形参不适用于子类使用时

B、父类中的方法在子类中没有时

C、父类的功能无法满足子类的需求时

D、父类方法中的返回值类型不适合子类使用

32、下列选项中,用于解压jar文件的命令是( B )

A、jar –c

B、jar -x

C、jar -v

D、jar -f

33、在try{}catch(______e){}横线处需要填写的是( B )

A、异常对象

B、异常类

D、任意类

34、System类位于以下哪个包中?D

A、java.io

B、java.util

C、java.awt

D、https://www.doczj.com/doc/436359885.html,ng

35、final修饰符不可以修饰如下哪个内容?(B)

A、类

B、接口

C、方法

D、变量

36、Java中所有的类都是通过直接或间接地继承( A )类得到的

A、https://www.doczj.com/doc/436359885.html,ng.Object

B、https://www.doczj.com/doc/436359885.html,ng.Class

C、任意类

D、以上答案都不对

37、在Java语言中,以下哪个关键字用于在方法上声明抛出异常?C

A、try

B、catch

C、throws

D、throw

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

A、public

B、protected

C、private

D、default

39、Thread类位于下列哪个包中?B

A、java.io

B、https://www.doczj.com/doc/436359885.html,ng

C、java.util

D、java.awt

40、线程调用sleep()方法后,该线程将进入以下哪种状态?C

B、运行状态

C、阻塞状态

D、死亡状态

41、下列方法中,用于判断字符串是否相等的是(C)

A、boolean contains(CharSequence cs)

B、String toLowerCase()

C、boolean equals(Object anObject)

D、boolean isEmpty()

42、下列关于System类中getProperties()方法的描述中,正确的是?(A)

A、getProperties()方法用于获取当前的操作系统的属性

B、getProperties()方法用于获取当前JVM的属性

C、getProperties()方法用于获取指定键指示的操作系统属性

D、getProperties()方法用于获取指定的JVM的属性

A、getProperties()方法用于获取当前的操作系统的属性

B、getProperties()方法用于获取当前JVM的属性

C、getProperties()方法用于获取指定键指示的操作系统属性

D、getProperties()方法用于获取指定的JVM的属性

43、下列是Math类中的一些常用方法,其中用于获取大于等于0.0且小于1.0的随机数的方法是?(A )

A、random()

B、abs()

C、sin()

D、pow()

44、下列是Random类的一些常用方法,其中能获得指定范围随机数的方法是?( D )

A、nextInt()

B、nextLong()

C、nextBoolean()

D、nextInt(int n)

45、下列关于包装类的描述中,错误的是?(D)

A、包装类的作用之一就是将基本类型包装成引用类型

B、包装类它可以完成在基本类型与String类型之间的转换

C、包装类一共有八个,对应的基本数据类型

D、可以通过继承包装类完成自定义包装类的设计

46、下列关于Date类的描述中,错误的是?( D )

A、Date类获取的时间是以1970年1月1日0时0分0秒开始计时的

B、在JDK1.1之后,Date类逐渐被Calendar类取代

C、Date类中大部分构造方法都被声明为已过时

D、Date类中大部分方法依然推荐使用

47、下列关于DateFormat中parse(String source)方法的说法中错误的是?( C )

A、能够将一个字符串解析成Date对象

B、要求字符串必须符合日期/时间的格式要求

C、返回值是字符串类型的日期

D、执行该方法需要处理ParseException异常

48、在DateFormat类中定义了四个常量值用于作为参数传递给这些方法,其中FULL常量表示?(A )

A、完整格式

B、长格式

C、普通格式

D、短格式

49、在进行日期格式化时,代表秒的字母是?( A )

A、s

B、S

C、M

D、m

50、是打发A

A、1

B、2

C、3

D、4

51、下列关于Java特点的描述中,错误的是?C

A、Java语言不支持指针

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

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

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

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

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

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

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

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

53、下列关于JDK的说法中,错误的是?C

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

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

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

D、JDK是整个Java的核心

54、下列关于JDK安装的说法中,错误的是?D

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

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

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

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

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

A、Java文档制作工具

B、Java解释器

C、Java编译器

D、Java启动器

56、请阅读下列示例代码,选择程序的输出结果D

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

57、下列关于数组最值的描述中,错误的是( B )

A、要想求数组的最值必须先定义一个数组

B、在求数组最值时,初始时一定要将数组中的第一个元素的值赋给变量

C、求数组最值过程中,一定要对数组进行遍历

D、在求数组最大值时,使用变量记住每次比较后较大的那个值

58、下列数据类型进行运算时,哪一个会发生自动类型提升C

A、int + int

B、long + long

C、byte + byte

D、double + double

59、关于方法的递归,以下说法错误的是D

A、方法递归必须有结束条件

B、方法递归次数太多会导致内存溢出

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

D、方法递归可以无数次,只要有结束条件就可以

60、题号:请先阅读下面的代码。

int x = 1;

int y = 2;

if (x % 2 == 0) {

y++;

} else {

y--;

}

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

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

A、1

B、2

C、3

61、阅读下面的程序

public class Test {

public static void main(String[] args) {

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

continue;

System.out.print(x%2);

}

}

}

运行结果正确的是A

A、跳出循环,无输出

B、0121

C、01

D、0123

62、下列关于注释的使用,错误的是?( D )

A、int c = 10; //定义变量c

B、/* int c = 5; int x =6; */

C、/** 这是类的入口方法 */

D、/* /*int c = 10;*/ int x=5; */

63、下列关于while语句的描述中,正确的是A

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

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

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

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

64、下面选项中,哪一个不是Java中的关键字A

A、sizeof

B、const

C、public

D、goto

65、已知类的继承关系如下:

class A

class B extends A

class C extends A

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

A、A a=new B();

B、C c=new B();

C、C c=new A();

D、B b=new C();

66、请阅读下面的程序

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);

}

}

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

A、5

B、9

C、10

D、15

67、下列选项中,哪个是程序的运行结果C

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

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

A、double a=12.45;

B、float b=12.45;

C、double c=100;

D、float d=100;

69、阅读下面的代码片段

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

return a + b;

}

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

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");

70、请阅读下面的代码

class A{

int x;

static int y;

void fac(String s){

System.out.println(“字符串:”+s);

}

}

下列选项中描述正确的是( B )

A、x , y和s 都是成员变量

B、x 是实例变量,y是类变量,s是局部变量

C、x和y是实例变量,s是参数

D、x ,y和s都是实例变量

71、请阅读下面的代码

String s1=new String(“abc”);

String s2=s1.intern();

String s3=”abc”;

System.out.println(s1==s2);

System.out.println(s2==s3);

System.out.println(s1==s3);

下列选项中,程序的输出结果为(A)

A、false true false

B、false false false

C、false true true

D、false false true

72、下列关于构造方法定义的描述中,错误的是(C )。

A、方法名与类名相同

B、在方法名的前面没有返回值类型的声明

C、当定义了有参构造方法,系统默认的无参构造方法依然存在

D、在方法中不能使用return语句返回一个值

73、先来看一段代码

class Demo{

Demo(){

}

}

下列构造方法中,可以存在于Demo类中的是(C)

A、public Demo(){}

B、private Demo(){}

C、Demo(int age,String name)(){}

D、Demo(){}

74、下列关于this的说法中,错误的是(D )

A、只能在构造方法中使用this调用其它的构造方法,不能在成员方法中使用

B、在构造方法中,使用this调用构造方法的语句必须位于第一行,且只能出现一次

C、this关键字可以用于区分成员变量与局部变量

D、this可以出现在任何方法中

75、下列关于静态方法的描述中,错误的是( C )。

A、静态方法指的是被static关键字修饰的方法

B、静态方法不占用对象的内存空间,而非静态方法占有对象的内容空间

C、静态方法内可以使用this关键字

D、静态方法内部只能访问被static修饰的成员

76、下列关于单例设计模式的描述中,正确的是( B )

A、将一个类设计为单例设计模式,在其他类中可以创建这个类对象

B、将一个类设计为单例设计模式,必须私有其空参数构造方法,并且还不能定义有参数的构造方法

C、将一个类设计为单例设计模式,需要定义一个静态的成员方法将本类创建的对象返回给调用者

D、以上答案都不对

77、阅读下列的程序

public class Test3 {

public static void main(String[] args) {

_________________________

_________________________

}

}

class Outer {

static class Inner {

public void method () {

System.out.println("method");

}

}

}

下列选项中,可以正确输出method()方法的是( C )A、Outer o = new Outer();

o.method();

B、Inner I = new Inner();

i.method();

C、Outer.Inner oi = new Outer.Inner();

oi.method();

D、以上答案都不对

A、Outer o = new Outer(); o.method();

B、Inner I = new Inner(); i.method();

C、Outer.Inner oi = new Outer.Inner(); oi.method();

D、以上答案都不对

78、阅读下列的代码

public class Test {

public static void main(String[] args) {

_________________________

_________________________

}

}

class Outer {

static class Inner {

public void method () {

System.out.println("method");

}

}

}

下列选项中,填写在空白处可以使程序正常运行的是(C)

A、Outer o = new Outer(); o.method();

B、Inner I = new Inner(); i.method();

C、Outer.Inner oi = new Outer.Inner(); oi.method();

D、以上答案都不对

79、下面选项中,可以提取文档注释中作者信息的是( D )

A、javadoc –d . Demo1.java

B、javadoc –d . –public Demo1.java

C、javadoc –d . –version Demo1.java

D、javadoc –d . –author Demo1.java

80、以下关于继承的描述,说法正确的是( C )

A、子类继承父类的所有属性和方法

B、子类可以继承父类的私有的属性和方法

C、子类可以继承父类的公有的属性和方法

D、创建子类对象时,父类的所有构造方法都会被执行

81、函数重写与函数重载的相同之处是?(B)

A、权限修饰符

B、函数名

C、返回值类型

D、形参列表

82、下面对于final的描述中,错误的是?(A)

A、final修饰的局部变量可以被重新赋值

B、final修饰的变量被称之为常量

C、final修饰的基本数据类型变量,不能改变其值

D、final修饰的引用数据类型变量,不能改变其地址值

83、以下抽象类的定义中,错误的是?(D)

A、abstract class Demo1{}

B、abstract class Demo2{ public abstract String fun(String a); }

C、abstract class Demo3{ public String fun(){ return "CZBK"; } }

D、abstract class Demo4{ public static final String CZBK = "传智播客"; abstract void fun(){} }

84、下列选项中,关于接口的定义正确的是?( B )

A、abstract class Demo1{ abstract void speak(); abstract void eat(); }

B、interface Demo2{ void speak(); void eat(); }

C、interface Demo3{ void speak(); void eat(){}; }

D、interface Demo4{ void speak(){ System.out.println("ITCAST"); } void eat(); }

85、下列关于接口的描述,错误的是?(B)

A、接口不是Object类的子类

B、一个接口只能继承一个接口

C、一个接口可以继承多个接口

D、接口不能被实例化

86、阅读下段代码,

class Dog

{

public String name;

Dog(String name){

https://www.doczj.com/doc/436359885.html, =name;

}

}

public class Demo1

{

public static void main(String[] args){

Dog dog1 = new Dog("xiaohuang");

Dog dog2 = new Dog("xiaohuang");

String s1 = dog1.toString();

String s2 = dog2.toString();

String s3 = "xiaohuang";

String s4 = "xiaohuang";

}

}

返回值为true的是?( C )

A、dog1.equals(dog2)

B、s1.equals(s2)

C、s3.equals(s4)

D、dog1==dog2

87、对于使用多态的应用程序,某个对象的确切类型何时能知道?( B )

A、执行时才可以知道

B、应用程序编译时能够判断

C、程序员编写程序时就已知道

D、永远不会知道

88、下列关于对象的类型转换的描述,说法错误的是( C )

A、对象的类型转换可通过自动转换或强制转换进行

B、无继承关系的两个类的对象之间试图转换会出现编译错误

C、由new语句创建的父类对象可以强制转换为子类的对象

D、子类的对象转换为父类类型后,父类对象不能调用子类的特有方法

89、下列程序运行结果是(B )

public class Demo {

public static void main(String[] args) {

Demo demo = new Demo();

demo.show(new Car() {

public void run() {

System.out.println("demo run");

}

});

}

public void show(Car c) {

c.run();

}

}

abstract class Car {

public void run() {

System.out.println("car run...");

}

}

A、car run

B、demo run

C、无结果

90、以下对于try…catch语句描述正确的是( C)

A、try…catch语句处理程序中的错误

B、try...catch语句处理程序中的bug

C、try...catch语句处理程序中的异常

D、以上说法都不正确

91、下列异常中,属于编译时异常的是(C )

A、NumberFormatException

B、ArithmeticException

C、Exception

D、RuntimeException

92、下列关于自定义异常的说法中,错误的是( D )

A、自定义异常要继承Exception类

B、自定义异常继承Exception类后,具有可抛性

C、自定义异常可以在构造方法中用super关键字传递异常信息给父类

D、自定义异常必须继承Error类

93、阅读下面的代码,编译后会生成几层包?( C )

package cn.itcast.mypack;

class PackageDemo

{

public static void main(String [] args)

{

System.out.println("Hello package!");

}

}

A、一层包(cn)

B、二层包(cn.itcast)

C、三层包(cn.itcast.mypack)

D、四层包(cn.itcast.mypack.PackageDemo)

94、下列关于protected的说法中,正确的是( C )

A、protected修饰的方法,只能给子类使用

B、protected修饰的类,类中的所有方法只能给子类使用

C、如果一个类的成员被protected修饰,那么这个成员既能被同一包下的其它类访问,也能被不同包下该类的子类访问

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