Java2课后选择题

更新时间:2024-03-31 06:38:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

Java2实用教程(第4版)课后选择题整理

(以下内容可能会出现少量错别字,望见谅)

——by[小坏蛋~]

第一章选择题

(1)下列哪个是JDK提供的编译器?

A. java.exe B.javac.exe C.javap.exe D. javaw.exe

(2)下列哪个是Java应用程序主类中正确的main方法?

A. public void main (String args[]) B.static void main (String args[])

C .public static void Main (String args[]) D .public static void main (String args[])

第二章.选择题

(1)下列哪项字符序列可以作为标识符?

A .true B .default C. _int D.good-class (2)下列哪三项是正确的float变量的声明?

A .float foo=-1; B .float foo=1.0; C .float foo=42e1; D. float foo=2.02f; E .float foo== 3.03d; F. float foo== 0x0123; (3)下列哪一项叙述是正确的?

A. char型字符在Unicode表中的位置范围是0至32767 B. char型字符在Unicode表中的位置范围是0至65535 C. char型字符在Unicode表中的位置范围是0至65536

D. char型字符在Unicode表中的位置范围是-32768至32767 (4)以下哪两项是正确的char型变量的声明?

A. char ch=\ B .char ch='\\\\'

C. char ch='ABCD'; D. char ch=\ E. char ch='\?'; F. char ch='\?0' (5)下列程序中哪些[代码]是错误的? public class E

{ public static void main(String args[]) { int x =8;

byte b=127; //【代码1】 b=x; /【代码2】 x=12L; //【代码3】 long y=8.0; //【代码4】 float z=6.89; //【代码5】}

}

(6)对于int a[]=new int[3];下列哪个叙述是错误的? A. a.length的值是3。 B. a[1]的值是1。

C. a[0]的值是0。 D. a[a.length-1]的值等于a[2]的值。 第三章.选择题

(1)下列哪个叙述是正确的?

A. 5.0/2+10的结果是double型数据。 B. (int)5.8+1.0的结果是int型数据。

C.’苹’+’果’的结果是char型数据。 D. (short) 10+'a’的结果是short型数据。

(2)用下列哪个代码替换程序标注的[代码]会导致编译错误?

A. m-->0 B. m++>0 C. m=0 D. m>100&&true public class E{

public static void main (String args[]){ int m=10,n=0;

while([代码]){n++;} }

}

(3)假设有int x=1;以下哪个代码导致“可能损失精度,找到int需要char”这样的编 译错误?

A. short t=12+'a'; B .char c= 'a'+1; B. C. char m='a'+x; D .byte n='a'+1;

第四章选择题

(1)下列哪个叙述是正确的?

A. Java应用程序由若干个类所构成,这些类必须在一个源文件中。

B. Java应用程序由若干个类所构成,这些类可以在一个源文件中,也可以分布 在若干个源文件中,其中必须有一个源文件含有主类。 C. Java源文件必须含有主类。

D. Java源文件如果含有主类,主类必须是public类。 (2)下列哪个叙述是正确的?

A.成员变量的名字不可以和局部变量的名字相同。

B.方法的参数的名字可以和方法中声明的局部变量的名字相同。 C.成员变量没有默认值。 D.局部变量没有默认值.

(3)对于下列Hello类,哪个叙述是正确的? A. Hello类有2个构造方法。

B. Helol类的int Hello()方法是错误的方法。 C. Hello类没有构造方法。

D. Hello无法通过编译,因为其中的hello方法的方法头是错误的(没有类型)。 class Hello{

Hello(int m){}

int Hello(){return 20;}

hello(){}}

(4)对于下列Dog类,哪个叙述是错误的?

A. Dog(int m)与Dog(double m)是互为重载的构造方法。

B. int Dog(int m)与void Dog(double m)是互为重载的非构造方法。 C. Dog类只有两个构造方法,而且没有无参数的构造方法。 D. Dog类有3个构造方法。 class Dog{

Dog(int m){} Dog(double m){} int Dog(int m){ return 23; }

void Dog(double m){}

}

(5)下列哪些类声明是错误的?

A .class A B .public class A C .protected class A (6)下列A类中【代码1】~【代码5】哪些是错误的? class Tom{

private int x=120; protected int y=20; int z=11;

private void f(){ x=200;

System.out.println (x);} void g(){ x== 200;

System.out.println(x);}

}

public class A{

public static void main(String args[]){ Tom tom=new Tom(); tom.x=22;//【代码1】 tom.y=33;//【代码2】 tom.z=55;//【代码3】 tom.f();//【代码4】 tom.g();/【代码5】 }

}

(7)下列E类的类体中哪些【代码】是错误的。 class E{

int x; //【代码1】 long y=x; //【代码2】 public void f (int n){

int m; //【代码3】 int t=n+m; //【代码4】 }

D .private class A }

第五章.选择题

(1)下列哪个叙述是正确的?

A.子类继承父类的构造方法

B. abstract类的子类必须是非abstract类

C.子类继承的方法只能操作子类继承和隐藏的成员变量

D.子类重写或新增的方法也能直接操作被子类隐藏的成员变量. (2)下列哪个叙述是正确的? A .final类可以有子类

B. abstract类中只可以有abstract方法

C. abstract类中可以有非abstract方法,但该方法不可以用final修饰 D.不可以同时用final和abstract修饰同一个方法 E.允许使用static修饰abstract方法

(3)下列程序中注释的哪两个代码(A, B, C, D)是错误的(无法通过编译)? class Father

{private int money =12; float height;

int seeMoney(){return money; //A } }

class Son extends Father { int height;

int lookMoney(){

int m=seeMoney(); //B return m; } }

class E

{public static void main(String args[]) { Son erzi=new Son(); erzi.money=300; //C erzi.height=1 .78F;//D} }

(4)假设C是B的子类,B是A的子类,cat是C类的一个对象,bird是B类的一个 对象,下列哪个叙述是错误的?

A. cat instanceof B的值是true B. B. bird instanceof A的值是true

C. cat instanceof A的值是true D. bird instanceof C的值是true

(5)下列程序中注释的哪个代码(A, B, C, D)是错误的(无法通过编译)? class A

{static int m; static void f() {m=20; //A}

}

class B extends A { void f() //B { m=222; //C} }

class E

{ public static void main(String args[]){ A .f(); //D } }

(6)下列代码中标注的(A, B, C, D)中,哪一个是错误的? abstract class Takecare

{ protected void speakHello(){}//A public abstract static void cry();//B statis intf(){return 0;}//C abstrac七float g();//D }

(7)下列程序中注释的哪个代码(A, B, C, D)是错误的(无法通过编译)? abstract class A {

abstract float getFloat(); //A void f() {} //B } public class B extends A

{ private float m=1.Of; //C

private float getFloat()//D { return m;} }

(8)将下列哪个代码(A,B,C,D)放入程序中标注的【代码】处将导致编译错误? A. public float getNum() {return 4.0f;} B .public void getNum(){}

C. public void getNum(double d){}

D .public double getNum(float d) {return 4.0d; } class A{

public float getNum(){ return 3.0f; }

}

public class B extends A {【代码】}

(9)对于下列代码,下列哪个叙述是正确的?

A. 程序提示编译错误(原因是A类没有不带参数的构造方法)。 B. 编译无错误,[代码]输出结果是0。 C. 编译无错误,[代码]输出结果是1。 D. 编译无错误,[代码]输出结果是2。 class A

{ public int i=0;

A(int m) { i=1; } }

public class B extends A { B(int m){ i=2; }

public static void main(String args[]){

本文来源:https://www.bwwdw.com/article/7r4r.html

Top