一.选择题
1.Java 程序中使用赋值运算符进行对象赋值时,可以得到两个完全相同的对象。
正确
错误
2.下列代码的执行结果是()
public class Test {
public static int a = 1;
public static void main(String[] args) {
int a = 10;
a++; Test.a++;
Test t=new Test();
System.out.println(“a=” + a + " t.a=" + t.a);
}
}
a=10 t.a=3
a=11 t.a=2
a=12 t.a=1
a=11 t.a=1
3.以下程序执行的结果是:
class X{
Y y=new Y();
public X(){
System.out.print(“X”);
}
}
class Y{
public Y(){
System.out.print(“Y”);
}
}
public class Z extends X{
Y y=new Y();
public Z(){
System.out.print(“Z”);
}
public static void main(String[] args) {
new Z();
}
}
ZYXX
ZYXY
YXYZ
XYZX
4.A 是抽象父类或接口, B , C 派生自 A ,或实现 A ,现在 Java 源代码中有如下声明:
- A a0=new A();
- A a1 =new B();
- A a2=new C();
问以下哪个说法是正确的?( )
第1行不能通过编译
第1、2行能通过编译,但第3行编译出错
第1、2、3行能通过编译,但第2、3行运行时出错
第1行、第2行和第3行的声明都是正确的
5.一个文件中的数据要在控制台上显示,首先需要( )。
使用标准输出流System.out.println()。
建立文件输出流。
建立文件输入流。
标准输入流System.in.read()。
6.以下代码执行后输出结果为( )
public class Test
{
public static Test t1 = new Test();
{
System.out.println(“blockA”);
}
static
{
System.out.println(“blockB”);
}
public static void main(String[] args)
{
Test t2 = new Test();
}
}
blockAblockBblockA
blockAblockAblockB
blockBblockBblockA
blockBblockAblockB
7.以下哪项陈述是正确的?
正确答案: E 你的答案: E (正确)
垃圾回收线程的优先级很高,以保证不再 使用的内存将被及时回收
垃圾收集允许程序开发者明确指定释放 哪一个对象
垃圾回收机制保证了JAVA程序不会出现 内存溢出
进入”Dead”状态的线程将被垃圾回收器回收
以上都不对
8.下列Java代码中的变量a、b、c分别在内存的____存储区存放。
class A {
private String a = “aa”;
public boolean methodB() {
String b = “bb”;
final String c = “cc”;
}
}
正确答案: C 你的答案: C (正确)
堆区、堆区、堆区
堆区、栈区、堆区
堆区、栈区、栈区
堆区、堆区、栈区
静态区、栈区、堆区
静态区、栈区、栈区
9.DBMS 中实现事务持久性的子系统是()
安全性管理子系统
完整性管理子系统
并发控制子系统
恢复管理子系统
10.以下哪些类是线程安全的()
Vector
HashMap
ArrayList
StringBuffer
Properties
二.编程题
题目描述
有一个X*Y的网格,小团要在此网格上从左上角到右下角,只能走格点且只能向右或向下走。请设计一个算法,计算小团有多少种走法。给定两个正整数int x,int y,请返回小团的走法数目。
输入描述:
输入包括一行,逗号隔开的两个正整数x和y,取值范围[1,10]。
输出描述:
输出包括一行,为走法的数目。
示例1
输入
复制
3 2
输出
复制
10
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc=new Scanner(System.in);
int m=sc.nextInt();
int n=sc.nextInt();
System.out.println(step(m,n));
sc.close();
}
public static int step(int m,int n){
if(m == 0 || n == 0)
return 1;
return step(m - 1,n) + step(m,n -1);
}
}