admin 管理员组

文章数量: 1184232


2024年2月18日发(作者:criticalprocessdied蓝屏怎么修复)

Java判断和概念填空题

一、判断题

基本概念与Java语言基础

1.Java语言具有较好的安全性和可移植性及与平台无关等特性。( )

2.Java语言的源程序不是编译型的,而是编译解释型的。( )

3.Java Application程序中,必有一个主方法main(),该方法有没有参数都可以。( )

4.Java程序中不区分大小写字母。( )

5.机器不能直接识别字节码文件,它要经过JVM中的解释器边解释边执行。( )

6.System类中的println()方法分行显示信息,而print()方法不分行显示信息。(

7.当前路径的标识是“.”。 ( )

8.java命令不区分大小写,而javac命令区分大小写。( )

9.printf()和 format()方法使用指定格式字符串和参数,将格式化字符串写入到PrintStream类型的输出流(对象)中。()

10.在运行字节码文件时,使用java命令,一定要给出字节码文件的扩展名.class。( )

11.Java语言使用的是Unicode字符集,每个字符在内存中占8位。( )

12.Java语言中不同数据类型的长度是固定的,不随机器硬件不同而改变。( )

13.所有的变量在使用前都必须进行初始化。( )

14.已知byte i = (byte)127; i = i +1;这两个语句能被成功编译。( )

15.String str="abcdefghi"; char chr=(9); ( )

16.char[] chrArray={ 'a', 'b', 'c', 'd', 'e', 'f', 'g'}; char chr=chrArray[6]; ( )

17.int intArray[]={0,2,4,6,8}; int length=int ();( )

18.String str="abcedf"; int length=; ( )

19.说明或声明数组时不分配内存大小,创建数组时分配内存大小。( )

20.强制类型转换运算符的功能是将一个表达式的类型转换为所指定的类型。( )

面向对象应用

1.类是一种类型,也是对象的模板。( )

2.类中说明的方法可以定义在类体外。( )

3.实例方法中不能引用类变量。( )

4.创建对象时系统将调用适当的构造方法给对象初始化。( )

5.使用运算符new创建对象时,赋给对象的值实际上是一个引用值。( )

6.对象赋值实际上是同一个对象具有两个不同的名字,它们都有同一个引用值。( )

7.对象可作方法参数,对象数组不能作方法参数。( )

8.class是定义类的惟一关键字。( )

9.Java语言会自动回收内存中的垃圾。( )

10.Java语言中,构造方法是不可以继承的。( )

11.子类的成员变量和成员方法的数目一定大于等于父类的成员变量和成员方法的数目。( )

12.抽象方法是一种只有说明而无具体实现的方法。( )

13.Java语言中,所创建的子类都应有一个父类。( )

14.调用this 或super构造方法的语句必须放在第一条语句。( )

15.一个类可以实现多个接口,接口可以实现“多重继承”。 ( )

16.实现接口的类不能是抽象类。( )

17.使用构造方法只能给实例成员变量赋初值。( )

18.Java 语言不允许同时继承一个类并实现一个接口。( )

其他知识

1.容器是用来组织其他界面成分和元素的单元,它不能嵌套其他容器。( )

2.在Swing用户界面的程序设计中,容器可以被添加到其他容器中去。( )

3.使用BorderLayout布局管理器时,GUI组件可以按任何顺序添加到面板上。(

4.每个事件类对应一个事件监听器接口,每一个监听器接口都有相对应的适配器。(

5.Java中,并非每个事件类都只对应一个事件。( )

6.Applet可以运行在浏览器中。( )

7.Applet的两个方法getCodeBase( )和getDocumentBase( )的返回值都是URL类的对象,且二者返回的都是相同的URL地址。( )

8.Applet是一种特殊的Panel,它是Java Applet程序的最外层容器。( )

9.捕获异常try语句后面通常跟有一个或多个catch()方法用来处理try块内生成的异常事件。( )

10.使用try-catch-finally语句只能捕获一个异常。( )

11.Error类所定义的异常是无法捕获的。( )

12.IOException异常是非运行时异常,必须在程序中抛弃或捕获。( )

13.当一个方法在运行过程中产生一个异常,则这个方法会终止,但是整个程序不一定终止运行。( )

14.一个Java多线程的程序不论在什么计算机上运行,其结果始终是一样的。( )

15.Java线程有五种不同的状态,这五种状态中的任何两种状态之间都可以相互转换。( )

16.Java虚拟机(JVM)中的线程调度器负责管理线程,调度器把线程的优先级分为10个级别,分别用Thread类中的类常量表示。每个Java线程的优先级都在常数1和10之间,即_PRIORITY和_PRIORITY之间。如果没有明确地设置线程的优先级别,每个线程的优先级都为常数8。( )

17.当线程类所定义的run( )方法执行完毕,线程的运行就会终止。( )

18.线程的启动是通过引用其start()方法而实现的。( )

19.文件缓冲流的作用是提高文件的读/写效率。( )

20.Java系统的标准输入对象是,标准输出对象有两个,分别是标准输出和标准错误输出。( )

二、概念填空

1. Java语言是 的程序设计语言。(p3)

2. Java既是 型又是 语言,编译成的字节码文件由 在不同操作系统

上解释执行。(p3)

3. 运行环境负责装载用户 (分为从本地装载和从网络装载两种)和 ,最重要的是含有 ,它是一个平台软件,负责 并提交操作系统执行。(p4)

4. 如果在一台计算机上安装了 ,则自动安装了对应版本的 。(p4)

5. 如果在一个源程序中定义了多个类,则其中只能有一个 (public修饰),公共类的名称必须与文件 保持拼写和 一致。(p5)

6. Java标识符由字母、数字、 或 组成。(p10)

7. String一般作为 字符串类型 理解,但是从本质上讲,它是一个 而非简单的数据类型。(p11)

8. 基本数据类型int对应的包装类是 。(p15,表2.6)

9. 基本数据类型不是 ,在一些场合不能直接使用,需要转化为对应的 才能继续使用。(p16)

10. 包装类Integer的静态方法可以将字符串类型的数字”123”转换成整数类型。其形式如:i 。(p16)

11. VE_INFINITY 表示 。(p16)

12. Java语言中,7.7%3== 。(p17)

13. 多分支语句switch(…)括号中的表达式的返回值类型只能是下列类型之一,这些类型是: 。(p23)

14. 一维数组在声明时,[ ]里必须为空,但在使用new运算符进行创建的时候,[ ]里必须指明数组的 ,只有这样系统才能知道该给此数组分配多少内存。(p28-29)

15. 抽象是从被研究对象中 ,而

f 加 以考察,形成对研究问题正确、简明扼要的认识。(p38)

16. Java语言中,定义类用的关键字是 。(p )

17. 对象是对 ,类是对 的抽象。(p38)

18. 类也是一种数据类型,跟普通的数据类型相比,它是一种 。(p38)

19. 对象是类的 ,类是对象的 。(p38)

20. 面向对象程序设计将事物的共同性质抽象出来,使用 和 描述对象的状态和行为。

21. 一个对象可以被认为是一个把 和 封装在一起的实体,其中对象的属性通过 反映了对象当前的 ,对象的 通过 实现对象能够进行的操作。

22. 对象的共性抽象为类,类的 就是对象。

23. 方法中的形式参数和定义的局部变量的作用域仅限于方法, 。(p40)

24. 构造方法的方法名与类名相同,并且是 ,不能通过对象引用来调用。(p47)

25. 构造方法也具有 。(p48)

26. 如果类中定义了构造方法,则Java 构造方法。(p48)

27. 是一个特殊的方法,用于创建一个类的实例。(p )

28 当构造方法中的 时,此时在构造方法中需要用 关键字来区分域变量名与参数名。(p48)

29. 用static修饰符修饰的数据成员是 ,是其静态数据成员。它被 中,而不是保存在某个对象的内存区中。(p50)

30. static方法是类方法,不属于 ,但可以被类的所有对象访问。不用static修饰符限定的方法,虽然在类中定义,但其实是为 而定义。(p51)

31. Java中类的继承是为了反映现实世界中 。

32. Java语言中,定义子类时,使用关键字 来给出父类名。(B12)

33. 子类可以 ,这种做法叫覆盖。(p71)

34. 子类方法覆盖父类方法, (p72)

35. 抽象类中如果存在抽象方法,则 。(p73)

36. 子类的数据成员或成员方法与父类的数据成员或成员方法名字 时,当要调用父类的同名方法或同名数据成员时则可用 来指明。(p75)

37. 使用关键字this来调用同类的其它构造方法,优点同样是以最大限度地 ,减少程序的维护工作量。(p77)

38. 父类的构造方法,子类可以在自己的构造方法中使用super来调用,但

a (p79)

39. 如果一个类中有抽象方法,则这个类就必须声明成 。(p82)

40. 接口中的成员变量一律是 。而相应的关键字可以省略不写。(p87)

41. 是Java对于抽象方法进行支持的两种机制。(p94)

42. 面向对象的特征是 。(p94)

43. 父类声明可以引用所有具体子类的对象 ,也不能引用父类对象。(p95)

44. 线程的生命周期中,有创建、可运行、 、阻塞和死亡五种状态。(p138)

45. Java中输入/输出操作的主要方式是“流”,从流动方向上看,可以分为输入流和 。(p217)

Java模拟考试

一 、名词解释

1、 java的三个基本特征,并加以解释

2、 从用户的角度看,Java源程序中的类分为哪两种?

3 解释this,super的使用场合

4、在java语言说明类的成员有哪四种级别的访问控制?

5、说明重载与覆盖的区别?

6、在java语言中写出定义类的最一般形式

7、类修饰符用于指定类的使用特性和访问权限,通常有哪几种?

8、简单说明静态成员变量的特征?

二、选择题

1、下面程序段的输出结果是:

int a = 3;

( a++);

( a);

(++a);

A.444 B.445 C. 345 D.344

结果:

2、以下哪些是基本数据类型?

B. String C. integer D. Float

结果:

3、选择以下程序运行结果

n(" " +4 + 5;

n(4 + 5);

n(4 + 5 +"");

n(4 + "" +5);

A.第3行出现编译错误 B.输出45, 7, 7 和45.

C.输出7, 7, 7 和45. D.输出 45, 7, 45 和45.

结果:

4、选择以下程序运行结果

public class test {

public static void main(String args[]) {

int x=2,y=2,z=2;

if (x-- == 1 && y++ == 1 || z++ == 1)

n("x=" + x + ",y=" + y + ",z=" + z);

} }

A. x=1,y=3,z=2 B. x=2,y=3,z=2

C. x=1,y=2,z=2 D. x=1,y=3,z=3

结果:

5、 编译和运行以下代码结果为:

public class EqualsTest{

public static void main(String args[]){

byte A=(byte)4096;

if(A==4096) n("Equal");

else n("Not Equal");

} }

A.在第3行出现转换丢失精度的编译错误. B.输出 "Not Equal".

C.输出 “Equal“. D. 无输出结果

结果:

6、现有一个int类型的整数和一个double类型的数进行加法运算,则得到的结果类型为( )

A.int类型 B. double类型 C. float类型 D. long类型

7、以下程序的运行结果为( )

public class Test{

public static void main(String argv[ ]){

n("x="+5); } }

A. 5 B. x=5 C. "x="+5 D. "x="5

8、 以下程序的运行结果为( )

public class Test{

public static void main(String argv[ ]){

n("good"+"morning"); } }

A. goodmorning B. "good"+"morning"

C. good morning D. good+morning

9、选择以下程序运行结果( )

以下代码的输出结果?

public class Test{

int x=3;

public static void main(String argv[]){

int x= 012;

n(x);

}

}

A.12 B.012 C.10 D.3

10、选择以下程序运行结果( )

public class Exa

{

public static void main(String[] args)

{ int var1=10;

int var2=20;

n(var1+var2 + " " + var2);

}

}

A. 3021 B.30 21 C. 1020 21 D.30 20

11、请问,以下代码片段错在何处( )

switch(i==10)

{

case 1:

++i;

break;

case 2:

--i;

case 3:

i*=5;

break;

default:

i%=3;

}

A. switch表达式的结果必须是一个整数类型

B.第一个case的选择因子值是一个字符型

C.第二个case的选择因子值是一个字符串型

D.第二个case的选择分支中缺少break语句

三、写出下列程序的运行结果

1、class Variable{

int x=1,y=2,z=3;

void init( int x, int y ){

this.x = x;

this.y =y;

int z=5;

n("**** in init ****");

n("x = “+x+" y = “+y+" z = "+z);

} }

public class test1 {

public static void main( String[] args) {

Variable birth = new Variable();

(10,20);

}

} 结果:

**** in init ****

X = 10 y = 20 z = 5

2、public class SimpleDataType {

public static void main (String args [ ] ) {

int i = 3;

byte bi = (byte)i;

short si = 20000;

int li=(int)4.25;

float f = ;

.println(bi+"t"+si+"t"+i+"t"+li+"t"+f);

boolean b = false;

int i1 = 4;

b = ( i1!= 0 );

n("n"+b);

} }

结果:

true

3、 class A

{void callme(){

n("Inside A's callme() method");

}}

class B extends A{

void callme()

{n("Inside B's callme() method");

}}

public class Chinese{

public static void main(String [] args)

{B a=new B();

();

}} 结果:

Inside B's callme() method

4、public class test {

public static void main(String a[]) {

(7%-2+"t");

(7%2+"t");

(-7%2+"t");

n(-7%-2+"t");

n("7.2%2.8="+7.2%2.8);

}

} 结果:

1 1 -1 -1

7.2%2.8=

5、public class A {

protected void test(int x,int y)

{ n("test(int,int):"+x+" "+y);

protected void test(int x)

{ n("test(int):" + x); }

protected void test(String str )

{ n("test(String):" + str); }

public static void main (String[] args)

{ A a1 = new A();

("hello");

(5,4); }} }

结果:

test(String):hello

test(int,int):5 4

6、 public class test {

public static void main(String a[]) {

}

int m=0;

n("m++="+m++);

n("++m="+(++m));

boolean x;

x=(5>3)&&(4==6);

n("x="+x);

m=m%2;

n("result="+m+1);

int y=m*m+2*m-1;

n("m="+m+",y="+y);

}

}

结果:

m++=0

++m=2

x=false

result=01

m=0,y=-1

6、class Point {

int x,y;

public Point(int x1,int y1) {

x=x1;

y=y1;

}

public static void main(String args[]) {

Point p1=new Point(2,3);

Point p2=new Point(3,5);

Point p3=p1;

p1.x=18;

n(p3.x);

p1=p2;

n(p1.x);

}

}

【运行结果】

18

3

7、public class Test{

int i=1;

public static void main(String[] args){

Test x= new Test();

mo(3); }

void thisDemo(int i){

n(i);

n(this.i);

this.i = i;

n(this.i);

} }

【运行结果】

3

1

3

8、class Father{

private String str=“父类实例变量”;

static{n(“父类静态方法”);}

public Father(){n(“父类构造方法”);}

{ n(str); }

}

class Son extends Father{

private String str=“子类实例变量”;

{ n(str); }

static{n(“子类静态方法”);}

Son(){n(“子类构造方法”);}

public static void main(String[] arge){

new Son(); }

}

【运行结果】

父类静态方法

子类静态方法

父类实例变量

父类构造方法

子类实例变量

子类构造方法

9、class parent {

int a=3;

void f(){a=a+1;} }

public class Chinese extends parent {

int a=6;

Chinese(){

super.f();

a= a+super.a -2;

n("a="+a);}

public static void main(String[] args) {

Chinese cn=new Chinese(); } }

【运行结果】

a=8

10、Class jj { protected int x = 0;

protected void test(int x) {

n("test(int):" + x); }

protected void test(String str ) {

n("test(String):" + str); }

protected void test(float x) {

n("test(float):" + x );

}

protected void test(Object obj) {

n("test(Object):" + obj );

}

public static void main (String[] args) {

jj a1 = new jj();

("hello"); (5);

(6.3);

} }

【运行结果】

test(String): hello

test(int):5

test(float):

四、编写程序

1 求任意一元二次方程的解,若无实数解,求出虚数解。

public class jhg

{

public static void main(String[] args)

{

double a,b,c,d,x1,x2;

a = ouble(inputLine());

b = ouble(inputLine());

c = ouble(inputLine());

d = b*b - 4*a*c;

if(d >= 0 )

{

x1 = (-b + (d)) / 2*a ;

x2 = (-b - (d)) / 2*a ;

n("x1=" + x1 + " x2=" + x2);

}

else

{

double x,y;

x=(-d)/2*a;

y=(-d)/2*a;

n("x1=" + (-b/2*a) + "+" + x + "i");

n("x2=" + (-b/2*a) + "-" + y + "i");

}

}

}

public static String inputLine()

{

String x=null;

BufferedReader br=new BufferedReader(new InputStreamReader());

try {

x=ne();

} catch(IOException e) { }

return x;

}


本文标签: 方法 对象 成员 使用