java模拟试题三

java模拟试题三
java模拟试题三

09年全国计算机二级考试java模拟试题三(答案附试卷尾页)

一、选择题(每题2分,共计70分)

1.数据的存储结构是指 B

A、数据所占的存储空间量

B、数据的逻辑结构在计算机中的表示

C、数据在计算机中的顺序存储方式

D、存储在外存中的数据

2.下列关于栈的叙述中正确的是 D

A、在栈中只能插入数据

B、在栈中只能删除数据

C、栈是先进先出的线性表

D、栈是先进后出的线性表

3.树最适合用来表示____。 C

A、有序数组元素

B、无序数组元素

C、元素之间具有分支层次关系的数据

D、元素之间无联系的数据

4.堆(Heap)是____。 A

A、完全二叉树

B、线性表

C、二叉排序树

D、平衡二叉树

5.对建立良好的程序设计风格,下面描述正确的是 A

A、程序应简单、清晰、可读性好

B、符号名的命名只要符合语法

C、充分考虑程序的执行效率

D、程序的注释可有可无

6.软件需求分析阶段的工作,可以分为四个方面需求获取,需求分析,编写需求规格说

明书,以及 B

A、阶段性报告

B、需求评审

C、总结

D、以上都不正确

7.在软件的结构化设计(SD)方法中,一般分为总体设计和详细设计两个联合体其中总体 A

设计主要是建立

A、软件结构

B、软件流程

C、软件模型

D、软件模块

8.下面所列各项,哪些属于数据库技术的研究领域? C

Ⅰ.数据库管理系统软件的研制Ⅱ.数据库设计

Ⅲ. 数据库理论Ⅳ.操作系统

A、Ⅰ和Ⅱ

B、Ⅰ和Ⅲ

C、Ⅰ、Ⅱ和Ⅲ

D、全部

9.用树形结构来表示实体之间联系的模型称为 B

A、关系模型

B、层次模型

C、网状模型

D、数据模型

10.设关系R和关系S具有相同的属性个数,且相应的属性取自同一个域,则

{t|t∈R∧非t∈S} t是元组变量

其结果关系是 B

A、R∪S

B、R-S

C、R∩S

D、R-(R-S)

11.Java虚拟机的执行过程有多个特点,下列哪个特点不属于JVM执行特点?D

A、多线程

B、动态连接

C、异常处理

D、异步处理

12.编译Java application源程序文件将产生相应的字节码文件,这些字节文件的扩展名为 A

A、.java

C、.html

D、.exe

13.下列哪个是反斜杠字符的正确表示? A

A、\\

B、*\\

C、\

D、\’\’

14.下面属于Java 关键字的是 C

A、NULL

B、IF

C、do

D、While

15.下列代码的执行结果是: D

public class Test1{

public static void main(String args[]){

float t=9.0f;

int q=5;

System.out.println((t++)*(--q));

}

}

A、40

C、36

D、36.0

16.下列程序的输出结果为 A

public class Short{

public static void main(String args[]){

StringBuffer s=new StringBuffer("Hello");

if((s.length()>5)&&(s.append("there").equals("False")));

System.out.println("value is "+s);

}

}

A、value is Hello

B、value is thereHello

C、value is Hellothere

D、编译错误

17.下列关于for循环和while循环的说法中哪个是正确的? D

A、while循环能实现的操作,for循环都能实现

B、while循环判断条件一般是程序结果,for循环判断条件一般是非程序结果

C、两种循环在任何情况下都可以相互转换

D、两种循环结构中都必须有循环体,循环体不能为空

18.给出下面程序段:

if(x>0){System.out.println("Hello.");}

else if(x>-3){System.out.println("Nice to meet you!");}

else {System.out.println("How are you?");}

若打印字符串“How are you?”,则x的取值范围是 C

A、x>0

B、x>-3

C、x<=-3

D、x<=0&x>-3

19.下列说法中,哪个是正确的? A

A、类是变量和方法的集合体

B、数组是无序数据的集合

C、抽象类可以实例化

D、类成员数据必须是公有的

20.为aB类的一个无形式参数无返回值的方法method书写方法头,使得使用类名aB作为前缀 A

就可以调用它,该方法头的形式为

A、static void method()

B、public void method()

C、final void method()

D、abstract void method()

21.设有下面的一个定义:

class aa{

static void Show(){System.out.println("我喜欢Java!");}

}

class BB{void Show(){System.out.println("我喜欢C++!");}}

若已经使用aa类创建对象a和BB类创建对象b,则下面哪一个方法调用是正确的 C

A、a.Show();

b.Show();

B、aa.Show();

BB.Show();

C、aa.Show();

b.Show();

D、a.Show();

BB.Show();

22.关于被私有保护访问控制符private protected修饰的成员变量,以下说法正确的是 B

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

子类

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

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

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

23.关于以下程序代码的说法正确的是 D

1. class HasStatic {

2. private static int x=100;

3. public static void main(String args[]){

4. HasStatic hs1=new HasStatic();

5. hs1.x++;

6. HasStatic hs2=new HasStatic();

7. hs2.x++;

8. hs1=new HasStatic();

9. hs1.x++;

10. HasStatic.x--;

11. System.out.println("x="+x);

12. }

13. }

A、第5行不能通过编译,因为引用了私有静态变量

B、第10行不能通过编译,因为x是私有静态变量

C、程序通过编译,输出结果为:x=103

D、程序通过编译,输出结果为:x=102

24.以下程序段的输出结果为 A

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(ch);}

}

A、int version

B、String version

C、编译出错

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

25.当方法遇到异常又不知如何处理时,下列哪种做法是正确的? C

A、捕获异常

B、抛出异常

C、声明异常

D、嵌套异常

26.catch子句的形式参数,指明所捕获的异常类型,该类型必须是下列哪个类的子类?A

A、Throwable

B、aWTError

C、VirtualMachineError

D、Exception及其子集

27.Character流与Byte流的区别是

A、每次读入的字节数不同

B、前者带有缓冲,后者没有

C、前者是块读写,后者是字节读写

D、二者没有区别,可以互换使用

28.以下哪个是java.io包中的一个兼有输入输出功能的类。C

A、Object

B、Serializable

C、RandomaccessFile

D、java.io中不存在这样的类

29.实现一个线程的创建有几种方法? C

A、一种

B、三种

C、二种

D、四种

30.关于下列程序的功能,说法正确的是 C

public class ko10_1 extends Thread

{

int n;

ko10_1()

{

Thread td=new Thread(this);

td.start();

}

public void run()

{

for (n=0;n<6;n++)

{

try

{

System.out.print(n);

Thread.sleep(500);

}

catch(InterruptedException e)

{ System.out.println("Exception"); }

}

}

public static void main(String args[])

{

new ko10_1();

}

}

A、这段程序的功能是:每隔500秒打印012345

B、这段程序的功能是:每隔1秒打印012345

C、这段程序的功能是:每隔半秒打印012345

D、这段程序的功能是:每隔半分钟打印012345

二、填空题(每空2分,共计30分)

1.在完全二叉树顺序存储中,若结点I有左子女,则其左子女是结点__ 2I __。

输入答案,中间不含空格:

2.快速排序方法在要排序的数据_基本有序___情况下最不利于发挥其长处。

输入答案,中间不含空格:

3._ 软件测试___是为了发现错误而执行程序的过程。

输入答案,中间不含空格:

4.三级结构以__内层__、中间层和外层三个不同层次描述数据库,分别称为内模式、模式和外模式。

输入答案,中间不含空格:

5.联系是指_实体___之间的相互联系。

输入答案,中间不含空格:

6.根据序的构成和运行环境的不同,Java源程序分为两大类:Application ____程序和Applet程序。

输入答案,中间不含空格:

7.如果一个Java源程序文件中定义有4个类,则使用Sun公司的JDK编译器javac编译该

源程序文件将产生4个文件名与类句相同而扩展名为__.class __的字节码文件。

输入答案,中间不含空格:

8.break语句的最常用的用法是在switch语句中,通过break语句退出switch 语句,

使程序从switch结构后面的__第一条语句__开始执行。

输入答案,中间不含空格:

9.Object类是Java所有类的_根___。

输入答案,中间不含空格:

10.在Java运行时,如获得一个异常对象,它会自动寻找处理该异常的代码,它从生成异常

对象的代码构件开始,沿着方法_调用栈___按层回溯寻找,直至找到处理该类异常为止。

输入答案,中间不含空格:

11.在Java中,每个字符用__2__个字节表示。

输入答案,中间不含空格:

12.下列程序的创建了一个线程并运行,请填空,使程序完整。

public class ThreadTest{

public static void main(String args[]){

Hello h=new Hello();

_Thread t=new Thread(h) ___;

t.start();

}

}

class Hello implements Runnable{

int i;

public void run(){

while(true){

System.out.println("Hello"+i++);

if(i==5) break;

}

}

}

输入答案,中间不含空格:

13.在一个MVC用户界面中,存在三个通讯对象,它们分别是:模型、视图和__控件__。

输入答案,中间不含空格:

14.Java设立了一种追踪图像加载过程的机制,实现这种机制有两种方法:一是使用__MediaTracker __类,

另一种是实现ImageObserver接口。

输入答案,中间不含空格:

15.希望编写好的Java程序代码,应遵守命名规则、_为代码写文档和注释___、为代码分段、适当使用空白行、

遵循第32条规则。

输入答案,中间不含空格:

(答案)

选择题 1 2 3 4 5 6 7 8 9 10

正确答案B D C A A B A C B B

选择题11 12 13 14 15 16 17 18 19 20

正确答案D A A C D A D C A A

选择题21 22 23 24 25 26 27 28 29 30

正确答案C B D A C A C C C C

选择题31 32 33 34 35 36 37 38 39 40

正确答案A B B D C

填空题 1 2 3 4 5

正确答案2I 基本有序软件测试内层实体

填空题6 7 8 9 10

正确答案Application .class 第一条语句根调用栈

填空题11 12 13 14 15

正确答案2 Thread t=new Thread(h) 控件MediaTracker 为代码写文档和注释

java模拟试题附答案(一)

scjp模拟试题(一) Question No: 1 1.public class test ( 2. public static void main (String args[]) { 3. int i = 0xFFFFFFF1; 4. int j = ~i; 5. 6. } 7. ) What is the decimal value of j at line 5? A. 0 B. 1 C. 14 D. –15 E. An error at line 3 causes compilation to fail. F. An error at line 4 causes compilation to fail. 答案: C Question No: 2 Given: Integer i = new Integer (42); Long 1 = new Long (42); Double d = new Double (42.0); Which two expressions evaluate to True? (Choose Two) A. (i ==1) B. (i == d) C. (d == 1) D. (i.equals (d))

E. (d.equals (i)) F. (i.equals (42)) 答案: D, E Question No: 3 Exhibit : 1. public class test ( 2. private static int j = 0; 3. 4. private static boolean methodB(int k) ( 5. j += k; 6. return true; 6. ) 7. 8. public static void methodA(int i) { 9. boolean b: 10. b = i < 10 | methodB (4); 11. b = i < 10 || methodB (8); 12. } 13. 14. public static void main (String args[] ) ( 15. methodA (0); 16. system.out.printIn(j); 17. ) 18. ) What is the result? A. The program prints “0” B. The program prints “4” C. The program prints “8”

java模拟试卷3与答案

复习题 3 一、选择题 1. JDK 提供的编译器是(B)。 (A ) java.exe(B ) javac.exe (C) javap.exe( D) javaw.exe 2.以下作为 Java 程序入口的 main 方法声明正确的( C)。 (A ) public void main(String args[]) (B ) public int main(String args[]) (C) public static void main(String args[]) (D ) public static int main(String args[]) 3.以下标识符错误的是( C )。 (A )Public( B)张三( C) class(D ) main 4.java 中定义字符串 String s= ”pzhu”,下面操作可以取得字符串长度的是( A )。 (A ) s.length()( B) s.length( C)s.size()( D) length(s) 5.如下定义数组,操作正确的是(D)。 int a[]={1,2,3}; (A ) a[3]=100(B ) a[0].length( C)a++( D) a.length 6.如下定义二维数组操作错误的是()。 int a[][]={{1,2},{3}}; (A ) a[0][1]=200( B) a[0].length( C) a[1][1]=100( D) a.length 7. 以下数据类型存储空间最大的是(B)。 (A ) byte( B) long(C) float(D ) char 8. 面向对象的三大特性,不包括如下( A)。 (A )异常( B)封装(C)继承(D )多态 9、关于类的定义以下说法错误(B)。 (A )类定义使用class 关键字( B)每个类中必须有一个main 方法 (C)一个包可以包含多个类( D) java 中所有类都是Object 类的子类 10. 关于构造方法以下说法错误的是(D)。 (A)构造方法名必须与类名一致(B)构造方法可以重载 (C)构造方法是通过new 来调用(D)每个类都必须编写构造方法代码 11.关于继承如下说法错误的是(C)。 (A) Java 是单继承的(B)通过extends 来定义继承 (C)所有父类方法都可以被override的(D)继承呈现的是 is a 的关系 12.以下代码执行的结果是 ( C )。 System.out.println(" 攀枝花学院 pzhu".length()); (A)编译错误(B)运行错误(C) 9(D) 14 13. 用来存储键值对的容器是 ()。 (A )ArrayList( B ) LinkedList(C) HashSet( D) HashMap 14、 java 中用来抛出异常的关键字是( C )。 (A) try(B) catch(C) throw(D) throws 15.关于 finally块中的代码,以下说法不正确的是(A)。 (A ) try 块中的 return 语句会中断finally 块中语句的执行 (B )无论 finally 块前的语句运行是否产生异常,其中的语句都会执行 (C) finally 块中的语句通常中用作资源的清理 - 1 -

java模拟试题(带答案)

判断题 1.Java语言中的数组元素下标总是从0开始,下标可以是整数或整型表达式。 (√)2.在Java中对象可以赋值,只要使用赋值号(等号)即可,相当于生成了一 个各属性与赋值对象相同的新对象。(×) 3.所谓抽象类就是包含有抽象方法的类。(×) 4.Java系统的标准输入对象是System.in,标准输出对象有两个,分别是标准 输出System.out和标准错误输出System.err。(√)5.如果p是父类Parent的对象,而c是子类Child的对象,则语句c = p是 正确的。(×)6.当一个方法在运行过程中产生一个异常,则这个方法会终止,但是整个程序 不一定终止运行。(√) 7.用“+”可以实现字符串的拼接,用- 可以从一个字符串中去除一个字符子串。 (×) 8.一个容器中可以混合使用多种布局策略。(×) 9.Java中,并非每个事件类都只对应一个事件。(√) 10.Java的源代码中定义几个类,编译结果就生成几个以.class为后缀的字节 码文件。(√) 11.Java Applet是由独立的解释器程序来运行的。(×) 12.Java的字符类型采用的是ASCII编码。(×) 13.Java的各种数据类型占用固定长度,与具体的软硬件平台环境无关。(√) 14.System类不能实例化,即不能创建System类的对象。(×) 15.用户自定义的图形界面元素也可以响应用户的动作,具有交互功能。(√)填空题 1 java 源程序编译命令是 javac 2 java 应用程序中有一个main()方法,它前面有三个修饰符是 public , static , void 3 java语言数据类型可分为两大类,一类称为基本数据类型 ,另一类称为引用数据类型 4 在转向语句中, continue 语句使得程序结束本次循环,回到循环的条件测试部分继续执行。 5设x为float型变量, y为 double型变量, a为 int型变量,已知 x=2.5f,a=7 ,y=4.22 则表达式x+a%3*(int)x%(int)y的值为 4.5 6设x为float型变量, y为 double型变量, a为 int型变量,b 为long 型变量,c为char 型,则表达式x+y*a/x+b/y+c 的值为 double 类型 7设有数组定义:int MyIntArray[ ] = { 10 , 20 , 30 , 40 , 50 , 60 , 70}; 则执行以下几个语句后的输出结果是 120 。 int s = 0 ;

JAVA模拟试题(含答案)

一、请分别写出下面程序的运行结果,将答案添在每道题后的空格处 1. public class Test1 { public static void main(String[] args) { int x=10,y=20; System.out.print("x="+(x++)+" y="+(++y)+" sum="+(x+y)); } } 运行结果:x=10 y=21 sum=32 2. public class Test2 { public static void main(String[] args) { boolean end; for(int i=2;i<20;i++){ end=true; for(int j=2;j<=i;j++){ if(i%j==0&&j

蓝桥杯java模拟试题

本试卷包含两种题型:“代码填空”与“程序设计”。 填空题要求参赛选手在弄清给定代码工作原理的基础上填写缺失的部分,使得程序逻辑正确、完整。所填写的代码不多于一条语句(即不能出现分号)。 编程题要求选手设计的程序对于给定的输入能给出正确的输出结果。注意:在评卷时使用的输入数据与试卷中给出的实例数据可能是不同的。选手的程序必须是通用的,不能只对试卷中给定的数据有效。1.代码填空(满分3分) 以下程序打印出0~9的数字,请补充缺少的代码。 public class MyTest { public static void f(int begin, int end) { __________________; System.out.println(begin); f(begin+1, end); } public static void main(String[] args) { f(0,9); } } if(begin>end) return;//相当于退出循环的条件。return 无返回值根据void 2.代码填空(满分4分) 如果要把两个整型变量a、b的值交换,一般要采用一个中间变量做过渡,但也可以在不借助任何其它变量的情况下完成。试填写缺失的代码。 a = a ^ b; b = _________; a = _________; a^b a^b 3.代码填空(满分3分) 许多人都曾经玩过“拍七”游戏。规则是:大家依次从1开始顺序数数,数到含有7或7的倍数的要拍手或其它规定的方式表示越过(比如:7,14,17,71等都不能数出),下一人继续数下面的数字。违反规则者受罚。下面的程序模拟这个过程,拍7的情况输出“*”,请完善之。 for(int i=1; i<100; i++) { if(i % 7 == 0) System.out.println("*"); else if(___________________) System.out.println("*"); else System.out.println(i); } (i-7)%10==0||i/10==7 // i/10==7||i%10==7 4.代码填空(满分5分)

java模拟试卷及答案及解析4

复习题4 一、选择题 1.在面向对象的方法中,一个对象请求另一个对象为其服务的方式是通过发送( D ) A、调用语句 B、命令 C、口令 D、消息 2.Java语言具有许多优点和特点,下列选项中,哪个反映了Java程序并行机制的特点:( B ) A、安全性 B、多线程 C、跨平台 D、可移值 3.编写和运行Java applet程序与编写和运行Java application程序不同的步骤是:( B ) A、编写源代码 B、编写HTML文件调用该小程序,以.html为扩展名存入相同文件夹 C、编译过程 D、解释执行

4.Java的字符类型采用的是Unicode编码方案,每个Unicode码占用____个比特位。( B ) A、8 B、16 C、32 D、64 5.关于下列程序段的输出结果,说法正确的是:( D ) public class MyClass{ static int i; public static void main(String argv[]){ System.out.println(i); } } A、有错误,变量i没有初始化。 B、null C、1 D、0 6.下列代码的执行结果是:( B ) public class Test3{ public static void main(String args[]){ System.out.print(100%3);

. System.out.print(","); System.out.println(100%3.0); } } A、1,1 B、1,

C、1.0,1 D、1.0,1.0 7.下列程序段的输出结果是:( B ) void complicatedexpression_r(){ int x=20, y=30; boolean b; b=x>50&&y>60||x>50&&y<-60||x<-50&&y>60||x<-50&&y<-60; System.out.println(b); } A、true B、false C、1 D、0 8.给出下列代码片段:( D ) if(x>0){System.out.println("first");} else if(x>-3){ System.out.println("second");} else {System.out.println("third");} 请问x处于什么范围时将打印字符串“second”? A、x>0 B、x>

java笔试题 第五套题

一、选择题 1、在下列选项中,哪个不是一个算法一般应该具有的基本特征______。 A、确定性 B、可行性 C、无穷性 D、拥有足够的情报 2、希尔排序法属于哪一种类型的排序法______。 A、交换类排序法 B、插入类排序法 C、选择类排序法 D、建堆排序法 3、下列关于队列的叙述中正确的是______。 A、在队列中只能插入数据 B、在队列中只能删除数据 C、队列是先进先出的线性表 D、队列是先进后出的线性表 4、对长度为N的线性表进行顺序查找,在最坏情况下所需要的比较次数为______。 A、N+1 B、N C、(N+1)/2 D、N/2 5、信息隐蔽的概念与下述哪一种概念直接相关______。 A、软件结构定义 B、模块独立性 C、模块类型划分 D、模拟耦合度 6、面向对象的设计方法与传统的的面向过程的方法有本质不同,它的基本原理是______。 A、模拟现实世界中不同事物之间的联系 B、强调模拟现实世界中的算法而不强调概念 C、使用现实世界的概念抽象地思考问题从而自然地解决问题 D、鼓励开发者在软件开发的绝大部分中都用实际领域的概念去思考 7、在结构化方法中,软件功能分解属于下列软件开发中的______阶段。 A、详细设计 B、需求分析 C、总体设计 D、编程调试 8、软件调试的目的是______。 A、发现错误 B、改正错误 C、改善软件的性能 D、挖掘软件的潜能 9、按条件f对关系R进行选择,其关系代数表达式为______。 A、

B、 C、бf(R) D、∏f(R) 10、数据库概念设计的过程中,视图设计一般有三种设计次序,以下各项中不对的是______。 A、自顶向下 B、由底向上 C、由内向外 D、由整体到局部 11、下面有关变量及其作用域的陈述______是不对的。 A、在方法里面定义的局部变量在方法退出的时候被撤销 B、局部变量也叫自动变量 C、在方法外面定义的实例变量在对象被构造时创建 D、在方法中定义的方法的参变量只要该对象被需要就一直存在 12、下面有关Java代码安全性的叙述______是不对的。 A、字节码校验器加载查询执行需要的所有类 B、运行时解释器执行代码 C、在运行时,字节码被加载,验证然后在解释器里面运行 D、类加载器通过分离本机文件系统的类和从网络导入的类增加安全性 13、给出下面的代码: public class Data{ public static void main (String args[]){ float f=0.0; f+=1.0; System.out.println(f); } } ______叙述是对的。 A、编译时将发生错误 B、编译时正确但是运行时出错 C、输出为1.0 D、输出为null 14、类的设计要求它的某个成员变量不能被外部类访问。应该使用下面的______修饰符获得需要的访问控制。 A、public B、no modifier C、protected D、private 15、假设以下代码 public class Parent { public int addValue( int a, int b) { int s; s = a+b;

JAVA模拟面试题库

JAVA基础部分 1. 我们能不能声明main()方法为非静态? 不能,main()方法必须声明为静态的,这样JVM才可以调用main()方法而无需实例化它的类。 如果从main()方法去掉“static”这个声明,虽然编译依然可以成功,但在运行时会导致程序失败。 2.不用main方法如何定义一个类? 不行,没有main方法我们不能运行Java类。 在Java 7之前,你可以通过使用静态初始化运行Java类。但是,从Java 7开始就行不通了。 3. String类为什么是final的。 主要是为了“效率”和“安全性”的缘故。若String允许被继承,由于它的高度被使用率,可能会降低程序的性能,所以String被定义成final; 4.使用final 关键字修饰一个变量时,是引用不能变,还是引用的对象不能变? 使用final 关键字修饰一个变量时,是指引用变量不能变,引用变量所指向的对象中的容还是可以改变的。 5. string、stringbuilder、stringbuffer区别 a.可变与不可变 String类中使用字符数组保存字符串,如下就是,因为有“final”修饰符,所以可以知道string对象是不可变的。 private final char value[];

StringBuilder与StringBuffer都继承自AbstractStringBuilder类,在AbstractStringBuilder 中也是使用字符数组保存字符串,如下就是,可知这两种对象都是可变的。 char[] value; b.是否多线程安全 String中的对象是不可变的,也就可以理解为常量,显然线程安全。 AbstractStringBuilder是StringBuilder与StringBuffer的公共父类,定义了一些字符串的基本操作,如expandCapacity、append、insert、indexOf等公共方法。 StringBuffer对方法加了同步锁或者对调用的方法加了同步锁,所以是线程安全的StringBuilder并没有对方法进行加同步锁,所以是非线程安全的 c.StringBuilder与StringBuffer共同点 StringBuilder与StringBuffer有公共父类AbstractStringBuilder(抽象类)。 抽象类与接口的其中一个区别是:抽象类中可以定义一些子类的公共方法,子类只需要增加新的功能,不需要重复写已经存在的方法;而接口中只是对方法的申明和常量的定义。 StringBuilder、StringBuffer的方法都会调用AbstractStringBuilder中的公共方法,如super.append(...)。只是StringBuffer会在方法上加synchronized关键字,进行同步。 最后,如果程序不是多线程的,那么使用StringBuilder效率高于StringBuffer。 6. 抽象类和接口的区别 1).抽象类可以有构造方法,接口中不能有构造方法。 2).抽象类中可以有普通成员变量,接口中没有普通成员变量 3).抽象类中可以包含非抽象的普通方法,接口中的所有方法必须都是抽象的,不能有非抽象的 普通方法。 4). 抽象类中的抽象方法的访问类型可以是public,protected 和(默认类型,虽然 eclipse 下不报错,但应该也不行),但接口中的抽象方法只能是public 类型的,并且默认即为 public abstract 类型。 5). 抽象类中可以包含静态方法,接口中不能包含静态方法

java笔试模拟题三

Java寒假笔试模拟题三 姓名:________学号:___________ 一、单项选择题: 1.Struts是一个开源的Web开发框架,它是由哪个组织进行维护的?( c )。 A.BEA B.JBoss C.Apache D.Sybase 2.如果在Web应用程序中添加struts2框架的支持,需要在配置哪个类作为struts2的核心控制器( a )。 A.FilterDispatcher B.StrutsServlet C.ApplicationContextListener D.SessionFactory 3.Struts2的核心控制器需要在哪个配置文件中进行配置( b ) A.struts.xml B.web.xml C.applicationContext.xml D.webwork.xml 4.关于开发人员自己创建的Action,以下说法正确的是( c ) A.Struts2中的Action必须继承Action类 B.Struts2中的Action必须实现Action接口

C.Struts2中的Action无需实现或者继承任何类或接口 D.Struts2中的Action必须继承ActionSupport类 解释:Struts 2的Action无须实现任何接口或继承任何类型,普通的POJO类就可以用做Action类,但是,我们为了方便实现Action,大多数情况下都会继承com.opensymphony.xwork2.ActionSupport类,并重载(Override)此类里的String execute()方法,因为ActionSupport已经实现了Action接口,还实现了Validateable 接口,提供了数据校验功能。通过继承该ActionSupport类,可以简化Struts 2的Action开发。 5.以下关于Struts2配置文件中package元素说法错误的是( d ). A.package元素的name属性不可以重复 B.package元素可以进行继承 C.package元素可以声明为抽象(abstract=”true”) D.package元素可以嵌套 6.以下关于Struts2配置文件中action元素说法错误的是( a ). A.任何一个action的name属性都不可以相同 B.action元素可以没有class属性 C.action元素中拥有method属性 D.action元素的子元素可以配置interceptor-ref 7.Struts2进行数据收集和类型转换的工作,是由以下哪个负责完成的( a )。 A.FilterDispatcher B.ActionInvocation

Java面向对象模拟试题1

一、判断题(正确的描述打钩,错误的打叉,每题1分,共10分) 1 抽象类中不可以有非抽象的方法。(错) 2 如果将一个对象强制类型转换为一个不兼容的类型,将引发NullPointerException 异常。(错) 3 Java中Object类是最顶层的类。(对) 4 程序在编译通过以后,仍然可能出现运行时错误和逻辑错误。(对) 5 可以通过javac来运行一个Java Application。(错) 6 可以在子类构造函数中通过this关键字调用基类的构造函数。(错) 7 Java语言是IBM公司设计的一种面向对象程序设计语言。(错) 8 一个Unicode字符占4个字节。(错) 9 在循环语句中,使用continue;语句可以跳出循环。(错) 10 在Java Application中如果没有定义main()方法,则程序不能编译。(错) 二、简答题(请将答案写到答题纸上,注明题号。每题3分,共30分) 1 请看以下代码: package mytest; public class Main { public static void main(String[] args) { System.out.println(new A()); } } class A {

} Java在运行上述代码时输出一个很奇异的结果: mytest.A@60aeb0 尝试解释一下可能的原因. 点评: 本题的关键在于虽然类A没有定义任何方法,但它隐含着从基类Object中继承了toString()方法。答案必须点出这一结果是执行toString()方法得到的。 2 什么叫多态?你是如何理解多态的?请设计一个简单的示例,展示多态的用法。 点评: 几乎所有的Java教材都要介绍多态的概念,但只有能用自己的语言说清楚,并能自己设计一个典型实例展示多态特性的,才算是真正弄明白了。 从试卷中发现,不少同学弄混了方法重载与方法覆盖,认为“方法重载”就是多态。 3 在Java GUI程序中,布局管理器是一个很重要的概念。谈谈你对这个概念的理解,并进而回答以下问题: 如果要你开发出一个Windows资源管理器(图 1),你将如何应用合适的“布局管理器”来实现其界面? 图 1 Windows 7中的资源管理器 请指明你在图 1中的哪部分应用哪种布局管理器。 4 int和Integer都可以代表一个整数,这两者在使用上有什么区别吗?为什么JDK中要设计两个数据类型来表示同一种数据? 5 Java Application的程序入口点为main()函数,其声明如下: public static void main (String[] args) 请解释一下为何main()函数是公有的和静态的?

Java模拟试题(内附答案)

一、配对题(每小题1分,共10分) 在右栏中找出与左栏中的术语最相匹配的解释,并将该解释前的字母填写在相应术语前面的括号内: ()1. == A.一种Java程序,可以在Web浏览器中运行 ()2. = B.用于类声明中,指出新类派生于哪个类 ()3. % C. 赋值运算符 ()4. java D. 在方法体中定义 ()5. javac E.相等运算符 ()6. applet F.在类的定义体中定义,但位于类的方法体之外 ()7. application G. 编译Java程序 ()8. extends H.求模运算符 ()9.实例变量I.执行Java程序 ()10.局部变量J.由Java解释器执行的程序 二、判断题(每小题1分,共10分) 1.一个Java程序中至少要包含一个类的定义。() 2.注释的作用是使程序在执行时在屏幕上显示//符号之后的内容。() 3.声明变量时必须指定一个类型。() 4.如果在类定义中没有给出构造函数,则该类没有构造函数。() 5.final类中的变量和方法都必须用final修饰符修饰。() 6.超类代表的对象范围比子类广。() 7.Java提供称为多重继承的功能。() 8.drawOval(x, y, 50, 100)的前两个参数指定了椭圆的中心坐标。() 9.在Java坐标系中,x的值从左到右增长。()

10.单个的数组元素被传递给一个方法,并在方法中被修改,在被调用方法完成执行之后,该 元素的值将改为修改后的值。() 三、单选题(每小题2分,共20分) A1.Java语言是由_______公司开发的。 (A) Sun Microsystems (B) Microsoft (C) Oracle (D) IBM (E) Cisco Systems C 2. JDK命令________用于编译Test.java文件中的类。 (A) java Test (B) java Test.java (C) javac Test.java (D) javac Test C 3. Java字节码文件的扩展名是________。 (A) .java (B) .obj (C) .class (D) .exe B 4. 45 / 4的结果是________。 (A) 10 (B) 11 (C) 11.25 (D) 12 D 5.下面表达式中________的结果是数值1。 (A) 2 % 1 (B) 15 % 4 (C) 25 % 5 (D) 37 % 6 A 6. 下面的代码打印"Welcome to Java" ________次。 int count = 0; while (++count < 9) System.out.println("Welcome to Java"); (A) 8 (B) 9 (C) 10 (D) 11 (E) 0 E 7. 执行下面的程序段以后,y的输出是________。 int y = 0; for (int i = 0; i < 10; ++i) y += i; System.out.println(y); (A) 10 (B) 11 (C) 12 (D) 13 (E) 45 8. 下面的循环终止后sum的值为________。 int sum = 0; int item = 0; do { item++; sum += item; if (sum >= 4) continue; }

华为Java精选笔试题整套考卷(附完整答案)

×××机构/学校/公司×××课程/部门/班级Java×××考试题 文档密级机密文档 日期2019-09-07 Copyright ? 2019 ×××版权所有 非经本单位书面许可,任何单位和个人不得擅自摘抄、复制或拍照本文档内容的部分或全部,并不得以任何形式传播,否则将保留采取一切法律措施的权利,追究传播者的法律责任

考试须知 1.考试时长60分钟,请注意合理分配时间; 2.请将答案统一写在考试提供的答题纸上,且勿在试卷上进行草稿或者答题; 3.若迟到入场,考试结束时间按照统一规定结束,不针对迟到情况延长考试时间; 4.领到答题纸后,请先在指定位置准确、清楚地填写姓名、手机号/邮箱等栏目; 5.考试杜绝任何作弊行为; 6.请将手机调至静音,保持考场安静; 7.请勿以任何形式复制或带走任何考试材料,包括但不限于以拍照、手抄、夹带等方式将笔试试卷、答 题纸及草稿纸等材料带出考场; 8.考试过程中如有任何问题可举手示意在场监考人员。

考试内容 1.单选题(20’) (4) 2.多选题(30’) (5) 3.简答题(30’) (7) 4.编程题(20’) (9)

1. 单选题(20’) 本部分每试题2分。 1、下面关于变量及其作用范围的陈述哪个是不对的?(B ) A.实例变量是类的成员变量。 B.实例变量用关键字static声明。 C.在方法中定义的局部变量在该方法被执行时创建。 D.局部变量在使用前必须被初始化。 2、下面哪条语句把方法声明为抽象的公共方法?( B ) A.public abstract method(); B.public abstract void method(); C.public abstract void method(){} D.public void method() extends abstract; 3、哪个是将一个十六进制值赋值给一个long型变量?( D ) A.long number = 345L; B.long number = 0345; C.long number = 0345L; D.long number = 0x345L; 4、下面的哪个赋值语句是不对的?( A ) A.float f = 11.1; B.double d = 5.3E12; C.double d = 3.14159; D.double d = 3.14D; 5、下面哪个是不合法的标识符?( C ) A.$persons; B.TwoUsers; C.*point; D._endline; 6、若在某一个类定义中定义有如下的方法: final void aFinalFunction( ); 则该方法属于( C )。 A、本地方法 B、静态方法 C、最终方法 D、抽象方法 7、main方法是Java Application程序执行的入口点,关于main方法的方法头以下哪项是合法的( B )。 A、 public static void main() B、 public static void main(String[ ] args) C、 public static int main(String[ ] args) D、public void main(String arg[ ])

java模拟试题详解

JA V A模拟试题 多项选择题(在每小题的五个备选答案中选出正确答案,并将正确答案的序号填入题干后面的括号内,错选多选,漏选均不得分。) 1、给出如下代码: class Test{ private int m; public static void fun() { // some code... } } 如何使成员变量m 被函数fun()直接访问? A、将private int m 改为protected int m B、将private int m 改为 public int m C、将private int m 改为 static int m D、将private int m 改为 int m 答: C 2、下面哪几个函数是public void example(){...}的重载函数? A、 public void example( int m){...} B、public int example(){...} C、public void example2(){...} D、 public int example ( int m, float f){...} 答: A,D 3、给出下面的代码段: public class Base{ int w, x, y ,z; public Base(int a,int b) { x=a; y=b; } public Base(int a, int b, int c, int d) { // assignment x=a, y=b w=d; z=c; } } 在代码说明// assignment x=a, y=b处写入如下哪几个代码是正确的? A、 Base(a,b); B、x=a, y=b; C、x=a; y=b; D、this(a,b); 答: C,D 4、已知如下定义:String s = "story"; 下面哪个表达式是合法的? A、 s += "books"; B、char c = s[1]; C、int len = s.length; D、String t = s.toLowerCase(); 答: A,D 5、Java中main()函数的值是什么? A、 String B、int

java模拟题-1

一、选择题 1、面向对象程序设计语言的三个基本特征是?() A.封装、接口和多态 B.继承、接口和动态 C.跨平台、接口和动态 D.封装、继承和多态 2、关于继承和实现说法正确的是?() A、类可以实现多个接口,接口可以继承(或扩展)多个接口 B、类可以实现多个接口,接口不能继承(或扩展)多个接口 C、类和接口都可以实现多个接口 D、类和接口都不可以实现多个接口 3、关于访问权限说法正确的是?() A、类定义前面可以修饰public,protected和private B、内部类前面可以修饰public,protected和private C、局部内部类前面可以修饰public,protected和private D、以上说法都不正确 4、类Person里面有个方法sleep(),如果直接用Person.sleep(),则方法sleep 前面必须用的关键词是?() A.class B.static C.public D.final 5、下列关于构造方法不正确的是:() A.类的构造方法和类同名 B.一个类可以有多个构造方法 C.在实例化对象时必须调用类的构造方法 D.构造方法可以和该类其他方法一样被该类对象调用 6、关于匿名内部类叙述正确的是?() A、匿名内部类可以继承一个基类,不可以实现一个接口 B、匿名内部类不可以定义构造器 C、匿名内部类不能用于形参 D、以上说法都不正确

7、关于抽象类的叙述正确的是?() A.抽象类不可以实例化,或者说抽象类不能声明为对象 B.抽象类就是一种特殊的接口 C.抽象类的方法都是抽象方法 D.抽象类的导出类一定不是抽象类 8、下列选项中,用于在定义子类时声明父类名的关键字是:() A.interface B.package C.extends D.class 9、关于访问权限,说法正确的是?() A、类A和类B在同一包中,类B有个protected的方法testB,类A不是类B的子类(或子类的子类),类A可以访问类B的方法testB B、类A和类B在同一包中,类B有个protected的方法testB,类A不是类B的子类(或子类的子类),类A不可以访问类B的方法testB C、访问权限大小范围:public>包权限>protected>private D、访问权限大小范围:public>包权限>private>protected 10、类Car里面有个方法run(),如果直接用Car.run(),则方法run前面必须用的关键词是?() A.class B.final C.public D.static 11、关于访问权限,说法正确的是?() A、访问权限大小范围:public>包权限>protected>private B、访问权限大小范围:public>包权限>private>protected C、类A和类B在同一包中,类B有个protected的方法testB,类A不是类B的子类(或子类的子类),类A可以访问类B的方法testB D、类A和类B在同一包中,类B有个protected的方法testB,类A不是类B的子类(或子类的子类),类A不可以访问类B的方法testB 12、关于Java语言描述正确的是?() A、java和C++都保留了指针 B、java和C++都有三个特征:封装、继承和多态

java_模拟试题六

《J ava程序设计》课程 试卷6 一、单选题(每小题1分,共20分) 1、如下哪个是Java中的标识符________ A、public B、super C、3number D、width 2、如下哪个是Java中的标识符________ A、fieldname B、super C、3number D、#number 3、已知如下定义:String s = "story"; 下面哪个语句不是合法的________ A、s += "books"; B、s = s + 100; C、int len = s.length; D、String t = s +“abc”; 4、如下哪个是Java中有效的关键字________ A、name B、hello C、false D、good 5、下面的代码段执行之后count的值是什么________ int count = 1; for (int i = 1; i <= 5; i++) { count += i; } System.out.println(count); A、5 B、1 C、15 D、16 6、定义一个类,必须使用的关键字是________ A、public B、class C、interface D、static 7、定义一个接口必须使用的关键字是________ A、public B、class C、interface D、static 8、如果容器组件p的布局是BorderLayout,则在p的下边中添加一个按钮b,应该使用的语句是________ A、p.add(b); B、p.add(b,"North"); C、p.add(b,"South"); D、b.add(p,"North"); 9、声明并创建一个按钮对象b,应该使用的语句是________ A、Button b=new Button(); B、button b=new button(); C、Button b=new b(); D、b.setLabel(“确定”); 10、Frame对象默认的布局管理器是________

相关文档
最新文档