admin 管理员组

文章数量: 887021


2024年2月18日发(作者:数组对象转化为二维数组对象)

JAVA语言程序设计

一、单选题

1.( )提供给上层应用进行开发和构建应用的基础类库。

应用

正确答案: A

程序在编译之后,以( )方式被Java虚拟机执行。

A.源代码

B.二进制

C.字节码

D.文本

正确答案: C

3.下列( )移动开发平台使用Java语言作为官方推荐开发语言。

n

s

d

正确答案: D

语言中用来编译Java程序的命令是( )。

正确答案: D

5.下列( )是合法的标识符。

ityPrice

_green

C.23667

D.{printOut}

正确答案: B

6.下列( )不是保留字

_blue

e

正确答案: C

7.下列关于float类型float f=5.2的说法,正确的是( )。

A.正确

B.错误,精度不够,需要强制类型转换float

C.错误,变量声明错误

D.错误,可以考虑使用int类型

正确答案: C

8.下列代码执行的结果中m和n的值分别为( )。

int m = 50, n=160; int tmp =m; m=n; n=tmp 回答错误

A.50/160

B.50/50

C.160/50

D.160/160

正确答案: C

9.表达式29/3*3的值是( )。

A.29

B.27.999

C.27

D.27.0

正确答案: C

10.执行下列语句: int m=15; int val =m- -; val的值是( )。

A.13

B.14

C.15

D.16

正确答案: C

11.执行下列语句: int m=15; int val =--m; val的值是( )。

A.13

B.14

C.15

D.16

正确答案: B

12.编译运行以下代码段后,关于输出结果正确的是( )。

public class Conditional{

public static void main(String args[ ]){

int x=4;

n(“value is “+ ((x>4) ? 99.9:9));

}

}

is 99.9

is 9

is 9.0

D.编译错误

正确答案: C

13.下列代码段运行结果为( )。

int num = 15;

if (num % 2==0) {

n( "num " + num + " is 偶数");

} else {

n( "num " + num + "is 奇数");

}

A.15

B.2

C."num 15 is 偶数"

D."num 15 is 奇数"

正确答案: D

14.下列代码段,m的值为2时会输出( )。

public class Test1{

public static void main(String args[]){

int m;

switch(m){

case 0:

n("case 0");

break;

case 1:

n("case 1");

break;

case 2: break;

default: n("default");

}

}

}

0

B.代码编译失败,没有结果输出

C.没有任何显示

D."default"

正确答案: C

15.下列代码段, n处于( )范围时将打印字符串"third" 。

if(n>5){ n("first"); } else

if(n<=0){ n("second"); } else { n("third"); }

A.n>5

B.n<5

C.n<=0

D.n>0&&n<=5

正确答案: D

16.下列代码段,执行结果为( )。

int n; for (n=9; n>=3; n--) {(n);}

A.代码执行成功,输出结果为9

B.代码执行成功,输出结果为8

C.代码执行成功,输出结果为9876543

D.代码编译失败,没有结果输出

正确答案: C

17.下列循环语句实现先执行后判断循环条件的是( )。

-while

-case

正确答案: B

18.在switch-case语句中,需要与( )语句搭配使用,用以结束对应case逻辑的执行。

ue

-else

正确答案: B

19.下列代码段,输出“default”的m的值( )。

public class Test1{

public static void main(String args[]){

int m;

switch(m){

case 0:n("case 0");

case 1:n("case 1");break;

case 2: break;

default: n("default");

}

}

}

A.0

B.1

C.2

D.3

正确答案: D

20.下列代码段, x处于( )范围时将打印字符串"second" 。

if(x>0){ n("first"); }

else if(x>-3){ n("second"); }

else { n("third"); }

A.x>0

B.x>-3

C.x<=-3

D.x<=0&&x>-3

正确答案: D

21.下列数据类型中,switch语句不能用于的是( )。

正确答案: A

22.类内部内容不包括( )。

A.属性信息

B.外部类的私有方法调用

C.方法声明

D.构造方法声明

正确答案: B

23.下列关于类方法的描述,错误的是( )。

A.类方法可使用关键字static作为修饰符

B.类方法和实例方法均占用内存空间,类方法在未实例化之时,不占用内存空间

C.类方法能用实例和类名调用

D.类方法只能处理类变量或调用类方法

正确答案: B

24.下列( )不是修饰符。

ct

正确答案: D

25.下列修饰符( )修饰的变量称为静态变量,修饰的方法称为静态方法。

onized

ct

正确答案: C

26.对于下列代码段,说法正确的是( )。

public class Student {

private String name;

private int age;

public Student() {

this("李红", 25);

}

public Student(String curName, int curAge) {

= curName;

age = curAge;

}

public void setName(String name) {

= name;

}

@Override

public String toString() {

return e() + "," + ;

}

………

}

和 age 是两个构造方法的入口参数

B.通过 调用了方法name

C.通过this("李红", 25) 调用了构造方法

D.通过age 调用了方法age

正确答案: C

27.下列修饰符中,可以用来定义类方法和类变量的是( )。

onized

正确答案: C

28.下列修饰符在修饰类时,类不能直接用来创建实例的是( )。

ct

onized

de

正确答案: A

29.下列修饰符在修饰类时,不能被继承扩展的是( )。

onized

ents

正确答案: A

30.下列技术中,不属于前端开发技术的是( )。

rap

s

正确答案: D

31.下列是有关子类继承父类构造函数的描述,正确的是( )。

A.创建子类的对象时,先调用子类自己的构造函数,然后调用父类的构造函数 B.子类无条件地继承父类不含参数的构造函数

C.子类必须通过super关键字调用父类的构造函数

D.子类可以继承父类的构造函数

正确答案: B

32.下列关于类的定义中,a1,a2为接口,x,y为类,继承代码中错误的是(

interface a1 extends a2{...}

x extends a1{...}

class x extends y{...}

class x extends y implements a1{...}

正确答案: B

33.关于下列代码说法正确的是( )。

public class A{

public void doit(){}

public String doit(){

return “a”;

}

public double doit(int x){

return 1.0;

}

}

A.无编译错误

B.代码public String doit(){ 行,出现编译错误

C.代码public double doit(int x){ 行,出现编译错误

D.代码return “a”;行,出现编译错误

正确答案: B

34.在Java语言中,下列关于方法覆盖的描述,错误的是( )。

)。

A.子类的方法名称与父类要保持一致

B.子类的返回数据类型与父类要保持一致

C.子类的参数信息与父类要保持一致

D.父类中声明为private的方法,对于子类是可以访问的

正确答案: D

35.下列( )数据库属于开源免费的。 此题未答

2

ver

正确答案: D

36.下面语句中,把方法声明为抽象的公共方法是( )。

abstract method()

abstract void method()

abstract void method(){}

void method() extends abstract

正确答案: B

37.内部类不可以声明在( )。

A.类的内部

B.类的方法内部

C.类的构造方法内部

D.类的外部

正确答案: D

38.下列选项中,( )修饰符修饰的变量是被同一个类生成的对象共享的。

e

正确答案: C

语言中用来抛出异常的关键字是( )。

y

正确答案: C

40.( )类是所有异常类的父类。

ble

ion

ption

正确答案: A

41.自定义异常类时,可以继承的类是( )。

ion及其子类

ionError

正确答案: B

42.使用catch(Exception e)的优点是( )。

A.指挥捕获个别类型的异常

B.捕获try语句块中产生的所有类型异常

C.忽略一些异常

D.执行一些程序

正确答案: B

语言中,一定会执行完的代码是( )。

y

正确答案: C

44.下列( )属于受控异常。

interException

astException

ption

正确答案: D

45.下列( )异常属于非受控异常。

eException

tFoundException

eption

Exception

正确答案: A

46.下列关于异常的说法正确的是( )。

A.抛出异常是指程序运行中出现异常情况时发生中断的现象

B.异常声明可以声明多个异常,中间用“;”分开

C.使用关键字catch声明可能发生的异常

D.抛出异常是异常处理的起点

正确答案: D

47.如下程序代码运行的结果是( )。

public class Foo{

public static void main(String[] args) {

try {

return;

} finally {

n( "Finally" );

}

}

}

y

B.编译失败

C.代码正常运行但没有任何输出

D.运行时抛出异常

正确答案: A

48.如果抛出在继承中的异常,下列说法正确的是( )。

A.父类中方法抛出三个异常,子类可以抛出四个异常

B.父类中方法抛出两个异常,子类可以抛出两个异常

C.父类抛出异常IOException,子类不是必须抛出异常IOException

D.父类与子类抛出异常是没有关系的

正确答案: B

49.编写线程类,能够返回线程执行结果的接口是( )。

le

le

le

izable

正确答案: B

50.下列说法中错误的是( )。

A.线程就是程序

B.线程是一个程序的单个执行流程

C.多线程是指一个程序的多个执行流程

D.多线程用于实现并发

正确答案: A

51.线程的生命周期,不包括( )。

A.新建

B.运行

C.停止

D.阻塞

正确答案: C

52.一个线程对象调用了( )方法之后,进入就绪状态。

()

()

()

d()

正确答案: B

53.下列( )关键字通常用来对代码块或者方法加锁,从而使得对其的访问是排他的。

izable

ent

onized

正确答案: C

中保证变量实现线程安全是通过关键字( )解决的。

y

onized

le

正确答案: C

55.假设存在进程/线程等待序列{p1,p2,...,pn},其中p1等待p2占有的资源,p2等待p3占有的资源,pn等待p1占有的资源,形成一个循环。这属于下列死锁产生必要条件中的( )。

A.资源互斥条件

B.资源不可抢占条件

C.占有且申请资源条件

D.循环等待

正确答案: D

56.下列代码创建一个新线程并启动线程。

Runnable target=new MyRunnable();

Thread myThread=new Thread(target);

其中,( )类可以创建target对象,并能编译正确。

class MyRunnable extends Runnable { public void run(){} }

class MyRunnable extends Object { public void run() {} }

class MyRunnable implements Runnable {public void run() {}}

class MyRunnable extends Runnable {void run() {}}

正确答案: C

57.下列方式中,能够实现同步的是( )。

onized方式

B.使用volatile修饰符

C.使用ThreadLocal方式

D.基于BlockingQueue的数据接口来存储

正确答案: D

58.下列 ( )技术不属于Web应用服务器。

ow

2

正确答案: D

二、多选题

1.下列代码的执行结果是( )。

public class Exam1 {

public static void main(String[] args) {

double var1 = 333;

double var2 = 2344;

String str = var1 + " / " + var2 + " = ";

var2 = var1 / var2;

str = str + var2;

n(str);

}

}

A.333.0 / 2344.0 = 0.14226

B.333.0 / 2344.0 = 0.142

C.0.14226

D.0.142

正确答案: A C

2.下列关于抽象类和接口的说法错误的是( )。

A.抽象类在Java语言中表示的是一种继承关系

B.在抽象类中可以没有抽象方法

C.接口中的方法都不能被实现

D.接口中的方法都必须加上public关键字

正确答案: B D

三、判断题

e目前只支持Windows操作系统,不支持Linux和Macos操作系统。( ) A.对

B.错

正确答案: B

的源代码,首先被编译为class文件,然后再被翻译成机器码被目标机器执行。(

A.对

B.错

正确答案: A

3.布尔值也可以被强制转化为整数型,true的整型值为0,false为1。( )

A.对

B.错

正确答案: B

4.一个变量的作用域可以在整个程序段中,即内部代码块和外部代码块中都可以使用。( )

A.对

B.错

正确答案: B

语言中注释的语法有三种:单行注释、多行注释和文档注释。( )

A.对

B.错

正确答案: A

6.逻辑运算符主要用于比较数据之间的大小。( )

A.对

B.错

正确答案: B

是中断打断的意思,在循环语句中是中断一次执行,然后继续后续的循环。( )

A.对

B.错

正确答案: B

8.在for语句中,必须设置循环条件,否则程序无法执行。( )

A.对

B.错

正确答案: B

9.类是典型的体现了面向对象的封装特性,可以隐藏类的内部实现,简化项目的复杂度。( )

A.对

B.错

正确答案: A

10.面向对象的继承性,可以大大减少类实现中的重复代码。( )

A.对

B.错

正确答案: A

11.子类可以继承父类的构造方法。( )

A.对

B.错

正确答案: B

12.子类在方法覆盖时,protected的方法可以在子类中被修改为public。( )

A.对

B.错

正确答案: A

13.在4种访问控制中,最宽松的访问控制级别是default。( )

A.对

B.错

正确答案: B

14.一个类只能实现一个接口。( )

A.对

B.错

正确答案: B

15.进行异常处理时,try语句块执行的效率高,要把所有代码都放在try语句块内部。( )

A.对

B.错

正确答案: B

y语句块可以捕获异常,也可以处理异常。( )

A.对

B.错

正确答案: B

17.如果想保证线程安全,可以通过volatile直接修饰对象。( )

A.对

B.错

正确答案: B

多线程运行环境下,多个线程可以独立运行,不会引起并发和线程安全问题。( )

A.对

B.错

正确答案: B

19.通过调用线程的sleep()发出I/O请求时,线程就会进入到死亡状态。( )

A.对

B.错

正确答案: B

中的列存储数据库使用灵活的图形来存储数据。( )

A.对

B.错

正确答案: B

四、课程实验

实验1:数据类型的使用

(1)实验目的

通过本实验,了解和掌握如何在程序中使用各种Java数据类型。

(2)问题描述

杂物店有各种各样的商品在售卖,请完成一个程序,帮助杂物店的老板计算顾客购买商品的总费用。

主要的商品有:冰棍(单价1.5元), 矿泉水(单价2.0元),面包(单价2.5),方便面(单价4.5元),瓶装可乐(单价3.5元)

目前共有两位顾客购买了商品,明细如下:

小明:矿泉水2瓶,面包1个,瓶装可乐1个;

小美:冰棍3个,瓶装可乐2个,方便面1包。

(3)实验要求

在程序中输出顾客的名称以及购买的商品详细清单,并给出最终的商品价格。

请提交源代码,并将执行结果的输出信息截图保存并提交。

实验2:分支、循环和跳转语句的使用

(1)实验目的

通过本实验,了解和掌握分支、循环和跳转语句的使用及常见问题处理。

(2)问题描述

杂物店正在做促销活动,很多商品都在进行特价促销,针对特价商品的购买数量做了限制,具体的促销办法是:

购买金额大于30元,打9折优惠。如果购买金额大于50元,打8.5折优惠。主要的商品有:冰棍(单价2.5元), 矿泉水(单价3.0元),面包(单价3.5元)。

目前共有两位顾客购买了商品,明细如下:

小明:矿泉水6瓶,面包5个,冰棍5个;

小美:冰棍6个, 矿泉水 4瓶, 面包4个。

请编写程序计算实际的缴费金额。

(3)实验要求

请提交源代码,并将执行结果的输出信息截图保存并提交。

实验3:类、对象、方法和修饰符的使用

(1)实验目的

通过本实验,了解和掌握类、方法以及各个修饰符的使用。

(2)问题描述

基于面向对象思想和类的方式,创建一个计算金额的程序。

啤酒 3.5元/罐, 方便面 4.5元/包, 矿泉水 2.0 元/瓶。

优惠规则:

对于单个商品购买数量超过2件时,给予9折优惠。

对于方便面这种商品,方便面总价超过20元时,扣减2元。

(3)实验要求

在程序中输出顾客的名称以及购买商品的详细清单,并给出程序中输出顾客结账时最终的商品总价。

在面向对象实现中,创建商品类,然后扩展出方便面的子类,在其中分别定义出各自的折扣逻辑。

测试数据:

小美购买商品: 啤酒 3罐,方便面3包,矿泉水 2瓶

小明购买商品: 啤酒2罐,方便面 5包

请提交源代码,并将执行结果的输出信息截图保存并提交。

实验4:类、接口、继承和多态的使用

(1)实验目的

通过本实验,了解和掌握类和接口的继承与多态使用。

(2)问题描述

杂物店正在做促销活动,针对春节制定了促销方案,具体如下:满50减8块,满30减4块。

同时很多商品都在进行特价促销,特价商品不参与最终结账时的折扣或者满减。特价商品是

啤酒,原价基础之上打7折销售。

某些商品需要满足最多购买数量的限制,超过限制的商品按照最大限制数量计算。某些商品有最小购买数量的要求,具体限制如下:

矿泉水: 单个商品最多购买3个;超过数量,按照最大数量计算。

方便面:最少购买2个,否则不予售卖。

主要的商品有: 矿泉水(单价2.0元),方便面(单价4.5元),啤酒目前共有两位顾客购买商品,明细如下:

小明:矿泉水6瓶,方便面3个,啤酒2个;

小美:方便面1包,矿泉水3瓶,啤酒1个。

请按照两种促销方案分别计算小明和小美实际的花费金额。

(3)实验要求

请提交源代码,并将执行结果的输出信息截图保存并提交。

10元)。 (单价


本文标签: 方法 商品 下列 执行 线程