南开22春学期《Java语言程序设计》在线作业【标准答案】

可做奥鹏全部院校在线离线作业毕业论文QQ:3230981406 微信:aopopenfd777

发布时间:2022-06-22 13:55:04来源:admin浏览: 47 次

22春学期(高起本1709-1803、全层次1809-2103)《Java语言程序设计》在线作业-00001

试卷总分:100  得分:100

一、单选题 (共 25 道试题,共 50 分)

1.下面程序段: boolean a=false; boolean b=true; boolean c=(a&&b)&&(!b) boolean result=(a&b)&(!b); 执行完后,正确的结果是

A.c=false;result=false

B.c=true;result=true

C.c=true;result=false

D.c=false;result=true


2.Java中,如果类C是类B的子类,类B是类A的子类,那么下面描述正确的是( )。

A.C不仅继承了B中的成员,同样也继承了A中的成员

B.C只继承了B中的成员

C.C只继承了A中的成员

D.C不能继承A或B中的成


3.设有下面的两个类定义: class aa{ void Show(){System.out.println("我喜欢Java!"); } class BB extends aa{ void Show(){System.out.println("我喜欢C++!"); } } 则顺序执行如下语句后输出结果为: aa a=new aa(); BB b=new BB(); a.Show(); b.Show();

A.我喜欢Java! 我喜欢C++!

B.我喜欢C++! 我喜欢Java!

C.我喜欢Java! 我喜欢Java!

D.我喜欢C++! 我喜欢C++!


4.Java语言的类型是

A.面向对象语言

B.面向过程语言

C.汇编程序

D.形式语言


5.Java语言的类型是

A.面向对象语言

B.面向过程语言

C.汇编程序

D.形式语言


6.在 Java 中,表示换行符的转义字符是()。

A.\n

B.\f

C.'n'

D.\dd


7.以下程序段的输出结果为 class Cruncher{ void crunch(int i){ System.out.println("int version"); } void crunch(String s){ System.out.println("String version"); } public static void main(String args[]){ Cruncher crun=new Cruncher(); char ch='p'; crun.crunch(c

A.int version

B.String version

C.编译出错

D.编译通过,但产生异常


8.下列关于循环语句的描述中,错误的是( )。

A.任何一种循环体内都可以含一种循环语句

B.循环体可以使空语句也可以是空

C.循环体内可以出现多个break语句

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


9.while循环和 do…while循环的区别是( )。

A.没有区别,这两个结构任何情况下效果一样

B.while循环比 do…while循环执行效率高

C.while循环是先循环后判断,所以循环体至少被执行一次

D.do…while循环是先循环后判断,所以循环体至少被执行一次


10.以下程序的功能是:求n!。请在下列程序中填入正确的语句 class FactorialTest{ static long Factorial(int n){ if(n==1) return 1; else _______________} public static void main(String a[]){ int n=8; System.out.println(n+"!="+Factorial(n));} }

A.return n*Factorial(n);

B.return (n-1)*Factorial(n);

C.return n*Factorial(n-1);

D.return (n-1)*Factorial(n-1);


11.StringBuffer reverse();表示( )。

A.字符串反转

B.字符串清空

C.字符串的赋值

D.字符串删除


12.在Java中,负责对字节代码解释执行的是()。

A.垃圾回收器

B.虚拟机

C.编译器

D.多线程机制


13.下列程序的输出结果为 int j=2; switch(j){ case 2: System.out.println("Value is two."); case 2+1: System.out.println("Value is three."); break; default: System.out.println("Value is "+j); break;}

A.Value is two.

B.Value is two. Value is three.

C.Value is two. Value is three. Value is 2

D.编译错误


14.关于被私有访问控制符private修饰的成员变量,以下说法正确的是( )。

A.可以被三种类所引用:该类自身、与它在同一个包中的其他类、在其他包中的该类的子类

B.可以被两种类访问和引用:该类本身、该类的所有子类

C.只能被该类自身所访问和修改

D.只能被同一个包中的类访问


15.下列语句中,属于多分支语句的是( )。

A.if语句

B.switch语句

C.do while语句

D.for语句


16.StringBuffer s=new StringBuffer("Hello");int len1,len2;len1=s.capacity();len2=s.length();则len1-len2=( )。

A.0

B.16

C.5

D.不确定


17.在Java语言中,可以用来完成方法调用的方式是( )。

A.方法作为表达式中的一项出现在表达式中。

B.方法作为单独的一条语句。

C.方法作为另一个方法调用的实际参数出现。

D.以上方法均可以。


18.在java语句中,运算符||实现()

A.逻辑或

B.逻辑与

C.逻辑非

D.逻辑相等


19.在Java中,一个类可同时定义许多同名的方法,这些方法的形式参数个数、类型或顺序各不相同,传回的值也可以不相同。这种面向对象程序的特性称为( )。

A.隐藏

B.覆盖

C.重载

D.Java不支持此特性


20.有以下方法的定义,请选择该方法的返回类型( )。 ReturnType method(byte x, double y) { return (short)x/y*2; }

A.byte

B.short

C.int

D.double


21.如果需要把s="It,is,me"按照","分解,并赋给新的变量s1,下列语句正确的是( )。

A.String s1=new StringTokenizer(s);

B.String s1=new StringTokenizer(s,",");

C.StringTokenizer s1=new StringTokenizer("It,is,me");

D.StringTokenizer s1=new StringTokenizer(s,",");


22.关于字符流,下列哪一项是不正确的( )。

A.为方便16位Unicode字符处理而引入的

B.可处理任意编码的非ASCII字符

C.以两个字节为基本输入输出单位

D.有两个基本类:Reader和Writer


23.如下哪个不是 Java 中有效的关键字?( )

A.const

B.NULL

C.false

D.this


24.Java编程所必须的默认引用包为( )。

A.java.sys包

B.java.lang包

C.java.new包

D.以上都不是


25.给出下面代码,关于该程序以下哪个说法是正确的?( ) public class Person{ static int arr[] = new int[5]; public static void main(String a[]) { System.out.println(arr[0]); } }

A.编译时将产生错误

B.编译时正确,运行时将产生错误

C.输出零

D.输出空


二、多选题 (共 10 道试题,共 20 分)

26.下列语句不正确的是( )。

A.形式参数可被视为局部变量

B.形式参数可被全局变量

C.形式参数为方法被调用时,是真正被传递的参数

D.形式参数不可以是对象


27.关于流(Stream)相关的类,下列哪些是正确的( )。

A.InputStream和OutputStream类是用来处理字节(8位)流的

B.Reader和Writer类用来处理字符(16位)流

C.各个类之间相互独立,没有关联

D.File类则用来处理文件


28.下列哪一个属于JAVA语言的数据类型( )。

A.指针类型

B.类

C.数组

D.浮点类型


29.关于Java的双字节流,下列哪些是正确的( )。

A.除了一般ASCII字符,很多其他语言比如汉字,一个字都需要至少2个字节存储

B.任何双字节字符不能转化为单字节字符,因为会丢失信息

C.主要是为了将一般字符与其他字符(如汉字字符)统一起来,方便处理

D.若程序使用char存储,任何单字节字符都转化成双字节存储


30.下列哪些是重载方法的特征( )。

A.参数个数不同

B.名相同而类型不同

C.参数类型不同

D.名相同且类型相同


31.以下不正确的描述是( )。

A.方法的定义不可以嵌套,但方法的调用可以嵌套。

B.方法的定义可以嵌套,但方法的调用不可以嵌套。

C.方法的定义和方法的调用均不可以嵌套。

D.方法的定义和方法的调用均可以嵌套。


32.关于字符串比较,下列叙述哪个是不正确的( )。

A.比较字符串是否完全相同不能用==

B.equals()和equalsIgnoreCase()的作用完全一致

C.equalsIgnoreCase()表示如果两个字符串完全相同则返回true,否则返回false

D.String date1,date2;则比较二者是否相同的语句是data1=equals(data2);


33.下列变量定义合法的是 ( )。

A.boolean flag=false;

B.int k=1+'k';

C.char ch="c";

D.float r=1/2;


34.关于Java的标准输入输出流,下列哪些是正确的( )。

A.System.out和System.in分别用来处理标准输出和输入

B.标准输入和输出均只针对计算机键盘和屏幕

C.Java对输入和输出编程均要求强制异常保护

D.只有一个标准输入流


35.关于选择结构下列哪些说法错误( )。

A.if语句和 else语句必须成对出现

B.if语句可以没有else语句对应

C.switch结构中每个case语句中必须用break语句

D.switch结构中必须有default语句


三、判断题 (共 15 道试题,共 30 分)

36.在Java中%是取余运算符,要求两端操作数为整型。


37.只能对一个类的方法进行封装,不能对属性进行封装


38.数组使用完成后,所占用的存储空间的释放是由垃圾收集器自动回收的。


39.Java有垃圾回收机制,内存回收程序可在指定的时间释放内存对象。


40.Java的类不允许多重继承,但接口支持多重继承。


41.即使一个类中未显式定义构造函数,也会有一个缺省的构造函数,缺省的构造函数是无参函数,函数体为空。


42.静态方法可以直接访问非静态变量和非静态方法


43.Java语言中的数组元素只能是基本数据类型而不能为对象类型。


44.Java源程序文件应以.java为后缀名保存,文件内包含几个类的定义就编译生成几个对应的字节码文件。


45.在一个java源文件中只能定义public class


46.实例方法可直接调用其他类的实例方法


47.Java 只支持单继承,不可多继承,但可以通过实现接口来达到多继承的目的


48.Java语言的类型是形式语言。


49.java程序员必须创建一个线程来释放内存


50.实例方法可直接调用本类的类方法


作业咨询 论文咨询
微信客服扫一扫

回到顶部