java二级考题-T2

T2-(8道练习)

1.请阅读下面程序

import java.io.*;
public class TypeTransition {
    
    
	public static void main(String args[]){
    
    
		char a='a’;
		int i=100;
		long y=456L;
		int aa=a+i;
		long yy=y-aa;

A、aa=197 yy=259
B、aa=177 yy=259
C、aa=543 yy=288
D、aa=197 yy=333

本题考的是基本数据类型及转换。
先将a自动转换为int类型后再运算,在ASCII码中,a对应的值是97,字符型的a转换为整型为97,所以aa=197;然后再将aa转为long类型后再运算,得出yy=456-197=259。
故本题答案为A。

2.请阅读下面程序

public class OperatorsAndExpressions {
    
    
void residual (){
    
    
int i=100,j=30;
float m=563.5f,n=4.Of;
System.out.println(i%j);
System.out.println(m%n);
public static void main(String args[]){
    
    i

A、10
3.5
B、20
2.5
C、10
4.5
D、20
3.5

本题考的是算术运算符。
在Java语言中,二元算术运算符包括取模运算符%。
对于二元算术运算符,其表达式结果的类型归纳为以下几类情况:
(1)操作数全为整型,那么,只要其中有一个为long型,则表达式结果为long型。
(2)两个操作数全是byte型或short型,表达式结果也为int型。
(3)操作数为浮点型,只要其中有一个为double型,表达式结果就是double型。
(4)两个操作数全是float型或其中一个是float型,而另外一个是整型,则表达式结果为
float型。
故本题答案为A。

3.请阅读下面程序

public class ForLoopStatement {
    
    
	public static void main (String[]args){
    
    
		int i,j;
		for(i=1;i<5;i++){
    
        //i循环
			for(j=1;j<=i;j++)    //j循环
					System.out.print(i+"×"+j+"="+i*j+" ");
		System.out.println();
		}
	}
}

程序完成后,i循环和j循环执行的次数分别是
A、4,10
B、8,9
C、9,8
D、10,10

本题考的是循环语句。
外层FOR循环控制每循环一次i的值加1,因为要求i<5,所以i=4循环执行后跳出循环,内部FOR循环以j为循环变量,i的值为终止条件,所以外层循环变量i每增加1,内层循环运行的次数比较前次增加1。程序运行结果为:
1×1=1
2×1=2 2×2=4
3×1=3 3×2=6 3×3=9
4×1=4 4×2=8 4×3=12 4×4=16
故本题答案为A。

4.下列叙述中,错误的是___。

A、Java中,方法的重载是指多个方法可以共享同一个名字
B、Java中,用abstract修饰的类称为抽象类,它不能实例化
C、Java中,接口是不包含成员变量和方法实现的抽象类
D、Java中,构造方法可以有返回值

本题考的是面向对象的程序设计概念。
构造方法属于特殊的一种方法,它的主要作用是初始化对象的成员变量。构造方法前面没有返回类型定义,也就是说它没有返回值,也不是void。
故本题答案为D。
点击学习构造方法

5.请阅读下面程序

public class ExampleStringBuffer {
    
    
	public static void main(String[]args){
    
    
		StringBuffer sb=new StringBuffer("test");
			System.out.print1n("buffer="+sb);
			System.out.println("length="+sb.length());
	}
}

程序运行结果中在"length="后输出的值是_
A、10
B、4
C、20
D、30

本题考的是字符串操作。
StringBuffer类被设计用于创建和操作动态字符串信息。为该对象分配的内存会自动扩展以容纳新增的文本。首先使用初始化字符串的方法创建一个StringBuffer对象sb,其对应的值为字符串"test",方法length()的功能是返回字符串的长度,返回值的数据类型为int,程序运行后,"length="后输出的值是字符串"test"的长度。
故本题答案为B。

6.请阅读下面程序

import java.io.*;
public class ExceptionCatch{
    
    
	public static void main(String args[]){
    
    
		try {
    
    
		FileInputStream fis=new FileInputStream("text");
			System.out.println("content of text is:");
		}catch(FileNotFoundException e){
    
    
			System.out.println(e);
			System.out.println("message:"+e.getMessage());
			e.printStackTrace(System.out);
		}___{
    
    
			System.out.println(e);
		}
	}
}

为保证程序正确运行,程序中下划线处的语句应是

A、catch(FilelnputStream fis)
B、e.printStackTrace()
C、catch(IOException e)
D、System.out.println(e)

本题考的是异常处理
在捕获异常时要用try-catch语句,该语句执行时,解释器把可能产生异常的代码段形成一个由try引导的"警戒区","警戒区"后面是catch从句,一个"警戒区"后面可接多个catch从句,catch的程序段由catch引导,所以B、D选项错误。catch子句都带一个参数,该参数是某个异常的类及其变量名(该异常对象的指针),所以A选项错误。
故本题答案为C。

7.下列叙述中,错误的是_

A、所有的字节输入流都从lnputStream类继承
B、所有的字节输出流都从OutputStream类继承
C、所有的字符输出流都从OutputStreamWriter类继承
D、所有的字符输入流都从Reader类继承

本题考的是Java中包含的输入输出流的类。
字符输出流类都是Writer抽象类的子类,所以,所有的字符输出流都从Writer类继承。
故本题答案为C。

8.下列叙述中,正确的是_

A、线程与进程在概念上是不相关的
B、一个线程可包含多个进程
C、一个进程可包含多个线程
D、Java中的线程没有优先级

本题考的是线程的概念。
一个进程可以包含多个线程,在多任务操作系统中,通过运行多个进程来并发地执行多个任务。而在操作系统中引入线程的概念后,由于每个线程都是一个能独立执行自身指令的不同控制流,因此一个包含多线程的进程也能够实现多项任务的并发执行。
故本题答案为C。
点击学习线程和进程
点击学习多线程

猜你喜欢

转载自blog.csdn.net/m0_49095721/article/details/109116522
T2