目录
清览题库1
清览题库2
清览题库3
清览题库4
清览题库5
清览题库1
1. 给出下列【代码】注释标注的代码的输出结果。
public class Example
{
public static void main(String args[])
{
System.out.println("hello"); //【代码】
}
}
答案
hello
2. 给出下列【代码】注释标注的代码的输出结果。
public class E
{
public static void main(String args[])
{
System.out.println(100); //【代码】
}
}
答案
100
3. Java语言的主要贡献者是James Gosling。
答案
是
4. Java语言是1995年5月Sun公司推出的编程语言
答案
是
5. 开发Java应用程序的基本步骤是:
1 编写源文件,
2.编译源文件,
3.运行程序。
答案
是
6. Java源文件是由若干个书写形式互相独立的类组成。
答案
是
7. Java源文件中只能有一个类。
答案
否
8. 如果源文件中有多个类,那么至多有一个类可以是public类
答案
是
9. java源文件的扩展名是.java
答案
是
10. 编译java源文件得到的字节码文件的扩展名是.class
答案
是
11. 下列源文件可保存成dog.java
public class Dog
{
public void cry()
{
System.out.println("wangwang");
}
}
答案
否
12. 下列源文件可以保存成Dog.java或Cat.java
class Dog
{
public void cry()
{
System.out.println("wangwang");
}
}
class Cat
{
public void cry()
{
System.out.println("maiomiao");
}
}
答案
是
13. java编译器的名字是java.exe
答案
否
14. 下列源文件People.java中People是主类
class Hello
{
public void speak()
{
System.out.println("wangwang");
}
}
public class People
{
public static void main(String args[])
{
System.out.println("你好");
}
}
答案
是
15. 下列源文件Hello.java的编程风格属于行尾风格
public class Hello {
public void speak() {
System.out.println("wangwang");
}
}
class People {
public static void main(String args[]) {
System.out.println("你好");
}
}
答案
是
16. 编译下列源文件的Person.java将得到2个字节码文件: Person.class和Xiti.class.
public class Person
{
void speakHello()
{
System.out.print("您好,很高兴认识您");
System.out.println(" nice to meet you");
}
}
class Xiti
{
public static void main(String args[])
{
Person zhang = new Person();
zhang.speakHello();
}
}
答案
是
17. 下列【1】、【2】、【3】、【4】注释标注的哪行代码有错误?
public class Example //【1】
{
public static void main(String args[]) //【2】
{
System.out.println("ok"); //【3】
System.out.println("hello");
system.out.println("您好"); //【4】
}
}
A. 1
B. 2
C. 3
D. 4
答案
D
18. 下列【1】、【2】、【3】、【4】注释标注的哪行代码有错误?
Public class Example //【1】
{
public static void main(String args[]) //【2】
{
System.out.println("ok"); //【3】
System.out.println("hello");
System.out.println("您好"); //【4】
}
}
A. 1
B. 2
C. 3
D. 4
答案
A
19. 下列【1】、【2】、【3】、【4】注释标注的哪行代码有错误?
public class Example //【1】
{
public static void main(string args[]) //【2】
{
System.out.println("ok"); //【3】
System.out.println("hello");
System.out.println("您好"); //【4】
}
}
A. 1
B. 2
C. 3
D. 4
答案
B
20. 阅读下列Java源文件,并回答问题。
public class Speak
{
void speakHello()
{
System.out.println("I'm glad to meet you");
}
}
class Xiti4
{
public static void main(String args[])
{
Speak sp=new Speak();
sp.speakHello();
}
}
(1) 上述源文件的名字是什么?
(2) 上述源文件编译后生成几个字节码文件?
这些字节码文件的名字都是什么?
(3) 使用Java解释器运行哪个字节码文件?
(4) 在命令行执行java Speak 得到怎样的错误提示?
答案
1)Speak.java
2)2个字节码文件。Speak.class ,Xiti4.class
3) Xiti4
4) 错误: 在类 Speak 中找不到 main 方法
清览题库2
1. 给出下列【代码】注释标注的代码的输出结果。
public class E
{
public static void main(String args[])
{
int m = 100;
System.out.println(m+"100"); //【代码】
}
}
答案
100100
2. 给出下列【代码】注释标注的代码的输出结果。
public class E
{
public static void main(String args[])
{
int a[] = {1,2,3,4};
int b[] = {100,200,300};
b = a;
System.out.println(b[3]); //【代码】
}
}
答案
4
3. 标识符的第一个字符可以是数字。
答案
否
4. Bird和bird是相同的标识符。
答案
否
5. 3.14是float型常量。
答案
否
6. 3.14和0.618d都是double型常量。
答案
是
7. 2e5和3.14E2都是double型常量.
答案
是
8. int []a;和int a[];都是正确的声明了一个一维数组a。
答案
是
9. int a[],b;
是声明了一个int型一维数组a和一个int型变量b。
答案
是
10. float a[20];是错误的数组声明。
答案
是
11. boolean yes = TRUE;是正确的boolean变量声明。
答案
否
12. float area = 1e1;是错误的float变量声明。
答案
是
13. char ch = '\\';是正确的char变量声明。
答案
是
14. char ch = 97;是错误的char变量声明。
答案
否
15. 对于int a[] = new int[3];a.length的值是3
答案
是
16. 对于int [] a = new int[3];a[0],a[1],a[2]的值都是0。
答案
是
17. 对于int a[][] = new int[2][9];
a. length的值是2,a[0].length,a[1].length的值都是9。
答案
是
18. 对于 int [][] a ={{1,2,3},{4,5,6,7}};a[0].length的值是3,
a[1].length的值是4。
答案
是
19. char ch ='abcd';是错误的char变量声明。
答案
是
20. main是java语言规定的关键字。
答案
否
21. byte amount = 128;是正确的byte型变量声明。
答案
否
22. 1e1是10的1次幂(1次方)。
答案
是
23. 1e2是double型常量。
答案
是
24. 把一个int型常量赋值给一个byte、short和char型变 量时,不可超出这些变量的取值范围,否则必须进行类型转换运算。
答案
是
25. Java语言有8种基本数据类型:boolean、byte、short、int、long、float、double、char。
答案
是
26. 数组是相同类型的数据元素按顺序组成的一种复合数据类型,因此两个相同类型的数组如果具有相同的引用,它们就有完全相同的元素。
答案
是
27. 下列【1】、【2】、【3】、【4】注释标注的哪行代码有错误?
public class Test
{
public static void main(String args[])
{
char c =65535; //【1】
byte b = 127; //【2】
int height = 100; //【3】
float f = 1e4; //【4】
}
}
A. 【1】
B. 【2】
C. 【3】
D. 【4】
答案
D
28. 下列【1】、【2】、【3】、【4】注释标注的哪行代码有错误?
public class Test
{
public static void main(String args[])
{
int x = 8;
byte b = 127; b = x; //【1】
x = 'a'; //【2】
long y= b; //【3】
float z=(int)6.89 ; //【4】
}
}
A. 【1】
B. 【2】
C. 【3】
D. 【4】
答案
A
29. 下列【1】、【2】、【3】、【4】注释标注的哪行代码有错误?
public class Test
{
public static void main(String args[])
{
char c =65535; //【1】
byte b = 127; //【2】
int height = 100; //【3】
float f = 3.14; //【4】
}
}
A. 【1】
B. 【2】
C. 【3】
D. 【4】
答案
D
30. 下列哪个类型声明的变量可以取true或false两个值?
A. byte
B. boolean
C. char
D. double
答案
B
31. 下列哪项字符序列可以作为标识符?
A. true
B. default
C. _int
D. good-class
答案
C
32. 下列哪一项叙述是正确的?
A. char型字符在Unicode表中的位置范围是0至32767
B. char型字符在Unicode表中的位置范围是0至65535
C. char型字符在Unicode表中的位置范围是0至65536
D. char型字符在Unicode表中的位置范围是-32768至32767
答案
B
33. 对于int a[] = new int[3];下列哪个叙述是错误的?
A. a.length的值是3。
B. a[1]的值是1。
C. a[0]的值是0。
D. a[a.length-1]的值等于a[2]的值。
答案
B
34. 以下哪一项是正确的float常量?
A. 15.3;
B. 3.14E2;
C. 67F;
D. 10d;
答案
C
35. 对于int [][] a = {{1,2},{1,2,3},{1,2,3,4}};
下列哪个叙述是错误的?
A. a.length的值是3。
B. a[2].length的值是4。
C. a[0][1]的值是1。
D. a[2][0]的值是1。
答案
C
36. 对于下列Test.java代码,下列哪个叙述是正确的?
public class Test
{
public static void main(String args[])
{
int arr[] = new int[10];
System.out.println(arr[1]);
}
}
A. 产生编译错误。
B. 输出null。
C. 编译正确,发生运行异常。
D. 输出:0。
答案
D
37. 对于下列E.java代码,下列哪个叙述是正确的?
public class E
{
public static void main(String args[])
{
int [] a = {1,2,3,4};
System.out.println(a[4]);
}
}
A. 有编译错误。
B. 输出4。
C. 编译正确,
发生运行异常ArrayIndexOutOfBoundsException: 4。
D. 输出:3。
答案
C
38. 下列选项中,( )是正确的float变量的声明。
A. float foo = 1;
B. float foo = 1.0;
C. float foo = 2e1;
D. float foo = 2.02;
答案
A
39. 下列选项中,( )叙述是错误的。
A. 对于“int a[][] = new int[6][4];”,a.length的值是6
B. 对于“int a[][] = new int[2][9];”,a.length、a[0].length、a[1].length的值都是9。
C. 对于“int [] a = new int[3];”,
a[0]、a[1]、a[2]的值都是0
D.“float height = 1eF;”是正确的float变量声明。
答案
B
40. 阅读程序题(给出【代码】注释标注的代码的输出结果)
public class E
{
public static void main(String args[])
{
int [][] a = {{0,1,2,3,4},{5,6},{7,8,9}};
int [] b ={100,200,300};
a[0] = b;
int m = a[0][2]+b[2];
System.out.println(m); //【代码】
}
}
答案
600
清览题库3
1. 给出下列【代码】注释标注的代码的输出结果。
public class Test
{
public static void main (String args[ ])
{
boolean boo =false;
int x = -1;
boo = ((x=10)>9)&&((x=100)>99);
System.out.println(boo+"hello"+x); //【代码】
}
}
答案
truehello100
2. 给出下列【代码】注释标注的代码的输出结果。
public class Test
{
public static void main (String args[ ])
{
boolean boo =false;
int x = -1;
boo = ((x=10)>9)|((x=100)>99);
System.out.println(boo+"hello"+x); //【代码】
}
}
答案
truehello100
3. 给出下列【代码】注释标注的代码的输出结果。
public class Test
{
public static void main (String args[ ])
{
int m = 0;
char ch ='A';
switch(ch)
{
case 9 :
case 'a' : m = m+1;;
break;
case 'A' : m = m+1;
case 66 : m = m+1;
default: m = m+3;
}
System.out.println(m); //【代码】
}
}
答案
5
4. 给出下列【代码】注释标注的代码的输出结果。
public class Test
{
public static void main (String args[ ])
{
int m = 123;
int sum = 0,t = 100;
while(t > 0)
{
sum = sum+m%10*t;
m = m/10;
t = t/10;
}
System.out.printf("%d",sum); //【代码】
}
}
答案
321
5. 表达式5/2的结果是2。
答案
是
6. 表达式10>20-17的结果是1
答案
否
7. 关系运算符的运算结果是int型数据。
答案
否
8. 逻辑运算符的运算结果是boolean型数据。
答案
是
9. 12 = 12 是非法的表达式。
答案
是
10. if语句中的条件表达式的值可以是int型数据。
答案
否
11. while(表达式)…语句中的“表达式”的值必须是 boolean型数据。。
答案
是
12. 在while语句的循环体中,执行break语句的效果是结束 while语句。
答案
是
13. 下列【1】、【2】、【3】、【4】注释标注的哪行代码有错误?
public class Test
{
public static void main (String args[ ])
{
byte b = 'a' ; //【1】
int n =100 ;
char c = 65 ; //【2】
b = b ; //【3】
b = b+1 ; //【4】
}
}
A. 【1】
B. 【2】
C. 【3】
D. 【4】
答案
D
14. 下列【1】、【2】、【3】、【4】注释标注的哪行代码有错误?
public class Test
{
public static void main (String args[ ])
{
char ch = '花'; //【1】
byte n = -100;
ch = ch-ch; //【2】
n = n; //【3】
n = 127; //【4】
}
}
A. 【1】
B. 【2】
C. 【3】
D. 【4】
答案
B
15. 下列【1】、【2】、【3】、【4】注释标注的哪行代码有错误?
public class Test
{
public static void main (String args[ ])
{
int m =1000;
while(m > 100) //【1】
{
m = m–; //【2】
if (m == 600)
{ //【3】
continue;
m++; //【4】
}
}
}
}
A. 【1】
B. 【2】
C. 【3】
D. 【4】
答案
D
16. 以下哪一项是下列代码的执行输出结果?
public class Test
{
public static void main (String args[ ])
{
int m =10,n;
n = m++;
n = –m;
System.out.printf("%d,%d",m,n);
}
}
A. 11,10
B. 10,10
C. 10,11
D. 11,11
答案
B
17. 下列叙述正确的是()。
A. 5.0/2+10的结果是double型数据
B. (int)5.8+1.0的结果是int型数据
C. '苹'+ '果'的结果是char型数据
D. (short)10+'a'的结果是short型数据
答案
A
18. 用下列代码替换程序标注的【代码】会导致编译错误的是。
public class E
{
public static void main (String args[ ])
{
int m=10,n=0;
while(【代码】)
{
n++;
}
}
}
A. m–>0
B. m++>0
C. m = 0
D. m>100&&true
答案
是
19. 对于Test.java,下列叙述正确的是()。
public class Test
{
public static void main (String args[ ])
{
boolean boo = false;
if(boo = true)
{
System.out.print("hello");
System.out.print("你好");
}
else
{
System.out.print("ok");
System.out.print("yes");
}
}
}
A. 出现编译错误
B. 程序的输出结果是hello你好
C. 程序输出的结果是ok
D. 程序输出的结果是okyes
答案
B
20. 对于“int n=6789;”,表达式的值为7的是()。
A. n%10
B. n/10%10
C. n/100%10
D. n/1000%10
答案
C
21. 用下列代码替换程序标注的【代码】会使程序输出hello 的是。
public class Test
{
public static void main (String args[ ])
{
int m = 0;
if(【代码】)
{
System.out.println("您好");
}
else
{
System.out.println("hello");
}
}
}
A. m– <= 0
B. ++m > 0
C. m++ > 0
D. –m < 0
答案
C
22. 表达式10>20-17的结果是1。()
答案
否
清览题库4
1. 类是Java语言中最重要的“数据类型”,类声明的变量被称作对象变量,简称对象。
答案
是
2. 构造方法没有类型。
答案
是
3. 类中的实例变量在用该类创建对象的时候才会被分配内存空间。
答案
是
4. 类中的实例方法可以用类名直接调用。
答案
否
5. 局部变量没有默认值。
答案
是
6. 成员变量没有默认值。
答案
否
7. 构造方法的访问权限可以是public,protected,
private或友好的。
答案
是
8. 方法中声明的局部变量不可以用访问修饰符:public,proteced,private修饰。
答案
是
9. this可以出现在实例方法和构造方法中。( )
答案
是
10. 成员变量的名字不可以和局部变量的相同。( )
答案
否
11. static方法不可以重载。( )
答案
否
12. 对于下列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)
{
}
}
答案
D
13. 当用new运算符和构造方法创建对象时,
下列哪个步骤的叙述是正确的?
A. 1.为成员变量分配内存,并指定默认值。
2.初始化成员变量,即用户声明成员变量时给定的默认值。
3.执行构造方法。
4.计算出一个引用值。
B. 1.计算出一个引用值。
2.为成员变量分配内存,并指定默认值。
3.初始化成员变量,即用户声明成员变量时给定的默认值。
4.执行构造方法。
C. 1.执行构造方法。
2.为成员变量分配内存,并指定默认值。
3.初始化成员变量,即用户声明成员变量时给定的默认值。
4.计算出一个引用值。
D. 1.为成员变量分配内存,并指定默认值。
2.初始化成员变量,即用户声明成员变量时给定的默认值。
3.计算出一个引用值。
4.执行构造方法。
答案
A
14. 对于下列Tom类,哪个叙述是正确的?
A. 程序运行时输出:ok。
B. 有两个构造方法。
C. 有编译错误。
D. 程序运行时输出:你好。
public class Test
{
public static void main(String args[])
{
Tom cat = new Tom();
}
}
class Tom
{
void Tom()
{
System.out.println("ok");
}
Tom()
{
System.out.println("你好");
}
}
答案
D
15. 下列哪个叙述是正确的?
A. 源文件可以有2条包语句(package)。
B. 源文件不可以有多条import语句。
C. 如果源文件有package语句,该语句也可以是源文件的第2条语句。
D. 类中的类方法(static方法)只能操作类变量(static变量),不可以操作实例变量。
答案
D
16. 对于下列Tom类,( )是正确的。
A. 程序运行时输出: ok。
B. 没有构造方法。
C. 有编译错误,因为创建对象cat使用的不是构造方法,java编译器已经不提供默认的构造方法了。
D. 程序运行时无任何输出。
public class Test
{
public static void main(String args[])
{
Tom cat = new Tom( );
}
}
class Tom
{
void Tom( )
{
System.out.println("ok");
}
Tom(int m)
{
System.out.println("你好");
}
}
答案
C
17. 下列叙述正确的是( )。
A. 成员变量有默认值。
B. this可以出现在static方法中。
C. 类中的实例方法可以用类名调用。
D. 局部变量也可以用访问修饰符public、proteced、
private修饰。
答案
A
18. 下列【1】、【2】、【3】、【4】注释标注的哪行代码有错误?
public class People
{
int m = 10,n; //【1】
n = 200; // 【2】
void f()
{
if(m == n)
n =+ m; //【3】
else
n = n – m; //【4】
}
}
A. 【1】
B. 【2】
C. 【3】
D. 【4】
答案
B
19. 下列【1】、【2】、【3】、【4】注释标注的哪行代码有错误?
class E
{
int x;
public void f(int n)
{
int m; //【1】
int t = x+n; //【2】
int y = x+m; //【3】
m = 10;
y = x+m; //【4】
}
}
A. 【1】
B. 【2】
C. 【3】
D. 【4】
答案
C
20. 下列【1】、【2】、【3】、【4】注释标注的哪行代码有错误?
class Tom
{
int x;
static int y;
void showXY()
{
System.out.printf("%d,%d\n",x,y);
}
static void showY()
{
System.out.printf("%d\n",y);
}
}
public class E
{
public static void main(String aqgs[])
{
Tom.y = 100; //【1】
Tom cat = new Tom();
cat.x = 100;
cat.y = 200; //【2】
Tom.x = 300; //【3】
cat.showXY();
Tom.showY(); //【4】
}
}
A. 【1】
B. 【2】
C. 【3】
D. 【4】
答案
C
21. 给出下列【代码】注释标注的代码的输出结果。
class AAA
{
static int m ;
static
{
m = 888;
}
}
public class E
{
public static void main(String args[])
{
AAA a= null;
System.out.printf("%d:%d",AAA.m,a.m);
}
}
答案
888.888
22. 给出下列【代码】注释标注的代码的输出结果。
class B
{
int x = 100,y = 200;
public void setX(int x)
{
x = x;
}
public void setY(int y)
{
this.y = y;
}
public int getXYSum()
{
return x+y;
}
}
public class E
{
public static void main(String args[])
{
B b = new B();
b.setX(-100);
b.setY(88);
System.out.printf("%d:%d:%d",b.x,b.y,b.getXYSum());
}
}
答案
100:88:188
23. 给出下列【代码】注释标注的代码的输出结果。
class Lake
{
Fish fish;
void setFish(Fish s)
{
fish = s;
}
void foodFish(int m)
{
fish.weight=fish.weight+m;
}
Fish getFish()
{
fish.weight -= 10;
return fish;
}
}
public class E
{
public static void main(String args[])
{
Fish redFish = new Fish();
Lake lake = new Lake();
lake.setFish(redFish);
lake.foodFish(120);
int w = lake.fish.weight;
Fish fishOK = lake.getFish();
System.out.printf("%d:%d:%d",w,lake.fish.weight,fishOK.weight); //【代码】
}
}
答案
121:111:111
24. 给出下列【代码】注释标注的代码的输出结果。
class Circle
{
int radius = 1 ;
void setRadius(int radius)
{
if(radius>0)
this.radius = radius;
}
}
class Geometry
{
Circle c;
void setCircle(Circle c)
{
c.radius += 10;
this.c = c;
}
}
public class E
{
public static void main(String args[])
{
Circle circle = new Circle();
circle.setRadius(10);
Geometry geometry = new Geometry();
geometry.setCircle(circle);
Circle circleTwo = new Circle();
geometry.setCircle(circleTwo);
System.out.printf("%d:%d",circle.radius,geometry.c.radius); //【代码】
}
}
答案
20:11
25. 如果源文件有package语句,
该语句必须是源文件的第一条语句。
答案
是
清览题库5
1. 子类继承父类的构造方法。
答案
否
2. 可以用final修饰构造方法。
答案
否
3. 如果在子类的构造方法中,没有显示地写出super关键字来调用父类的某个构造方法,那么编译器默认地有:super();
调用父类的无参数的构造方法(如果父类没有这样的构造方法,代码将出现编译错误)。
答案
是
4. 可以同时用final和abstract修饰同一个方法。
答案
否
5. 子类继承的方法所操作的成员变量一定是被子类继承或隐藏的成员变量。
答案
是
6. 如果一个类的所有构造方法的访问权限都是private的,那么意味着这个类不能有子类。
答案
是
7. 子类在方法重写时,不可以把父类的类(static)方法重写为实例方法。
答案
是
8. 子类在方法重写时,不可以把父类的实例方法重写为类(static)方法。
答案
是
9. abstract类中只可以有abstract方法。( )
答案
否
10. 下列哪个叙述是正确的?
A. abstract类中用户不能写构造方法。
B. 可以用new运算符和abstract类的构造方法创建对象。
C. abstract类中,必须要有abstract方法。。
D. 如果一个类中有abstract方法,这个类必须是abstract类。
答案
D
11. 下列哪个叙述是正确的?
A. final 类可以有子类。
B. abstract类中只可以有abstract方法。
C. abstract类中可以有非abstract方法,
但该方法不可以用final修饰。
D. 不可以同时用final和abstract修饰同一个方法。
答案
D
12. 下列哪个叙述是正确的?
A. 如果在子类中想使用被子类隐藏的成员变量或方法就需要使用关键字super。
B. 子类不可以声明和父类同名的成员变量。
C. 子类继承父类的构造方法。
D. 子类不可以定义和父类同名的方法。
答案
A
13. 下列哪个叙述是正确的?
A. 子类重写父类的方法时,不允许降低方法的访问权限,但可以提高访问权限。
B. 子类在方法重写时,可以把父类的public方法重写为private方法。
C. 子类在方法重写时,可以把父类的public方法重写为protected方法。
D. 如果子类不是abstract类,也允许子类将父类的非abstract方法重写为abstract方法。
答案
A
14. 下列【1】、【2】、【3】、【4】注释标注的哪行代码有错误?
class Hello
{
protected void speakHello() {} //【1】
public abstract void cry(); //【2】
static int f(){ return 0 ;} //【3】
void start(){ } //【4】
}
A. 【1】
B. 【2】
C. 【3】
D. 【4】
答案
B
15. 下列【1】、【2】、【3】、【4】注释标注的哪行代码有错误?
abstract class AAA
{
final static void speakHello() {} //【1】
final abstract void cry(); //【2】
static final int f(){ return 0 ;} //【3】
abstract float g(); //【4】
}
A. 【1】
B. 【2】
C. 【3】
D. 【4】
答案
B
16. 下列【1】、【2】、【3】、【4】注释标注的哪行代码有错误?
class Animal
{
void cry(){}
}
class Dog extends Animal
{
protected void cry() //【1】
{}
void cry(int m) //【2】
{}
}
class Cat extends Animal
{
private void cry() //【3】
{}
void cry(int m,int n) //【4】
{}
}
A. 【1】
B. 【2】
C. 【3】
D. 【4】
答案
C
17. 给出下列【代码】注释标注的代码的输出结果。
class Animal
{
int m = 100;
public int seeM()
{
return m;
}
public int getM()
{
return m;
}
}
class Dog extends Animal
{
int m = 6;
public int seeM()
{
return m;
}
}
public class E
{
public static void main(String args[])
{
Animal animal = null;
Dog dog = new Dog();
animal = dog;
System.out.printf("%d:%d:%d",dog.seeM(),animal.seeM(),animal.getM()); //【代码】
}
}
答案
6:6:100
18. 挑错题(ABCD注释标注的哪行代码有错误?)
abstract class Animal
{
int m =100;
}
class Dog extends Animal
{
double m;
}
public class E
{
public static void main(String args[])
{
Animal animal = null; //A
Dog dog = new Dog( );
animal = dog; //B
dog.m = 3.14; //C
animal.m = 3.14; //D
}
}
答案
D
19. 挑错题(ABCD注释标注的哪行代码有错误?)
abstract class AAA
{
final static void speakHello( ) {} //A
final abstract void cry( ); //B
static final int f( ){ return 0 ;} //C
abstract float g( ); //D
}
答案
B
20. 挑错题(ABCD注释标注的哪行代码有错误?)
public interface Com
{
abstract void cry( ); //A
public int x = 0; // B
static int y = 0; // C
}
abstract class Cat implements Com
{
abstract void cry( ); // D
}
答案
D
21. 挑错题(ABCD注释标注的哪行代码有错误?)
interface Com
{
int MAX = 100; //A
void f( );
}
abstract class Animal implements Com
{
int MIN ; //B
}
class Dog extends Animal
{
public void f( )
{
MIN = 10; //C
MAX = 200; //D
}
}
答案
D
22. 阅读程序题(给出【代码】注释标注的代码的输出结果)
class A
{
int f(int x,int y)
{
return x+y;
}
}
class B extends A
{
int f(int x,int y)
{
int m = super.f(x,y)+10;
return m;
}
}
public class E
{
public static void main(String args[])
{
A a = new B( );
System.out.println(a.f(2,10)); //【代码】
}
}
答案
22
23. 阅读程序题(给出【代码】注释标注的代码的输出结果)
interface Com
{
int add(int a,int b);
}
abstract class People
{
abstract int add(int a,int b);
}
class Student extends People implements Com
{
public int add(int a,int b)
{
return a+b;
}
}
public class E
{
public static void main(String args[])
{
Student stu = new Student( );
Com com = stu;
int m = com.add(12,6);
People p = stu;
int n = p.add(12,6);
System.out.printf("%d:%d",m,n); //【代码】
}
}
答案
18:18
24. 阅读程序题(给出【代码】注释标注的代码的输出结果)
interface Com
{
int add(int a,int b);
public static int get(int n)
{
return n;
}
public default int see(int n)
{
return n;
}
public default int look(int n)
{
return n;
}
}
class A implements Com
{
public int add(int a,int b)
{
return a+b;
}
public int see(int n)
{
return n+1;
}
}
public class E
{
public static void main(String args[])
{
A a = new A( );
int m = a.add(12,6);
int n =Com.get(12);
int t = a.see(6);
int q = a.look(6);
System.out.printf("%d:%d:%d:%d",m,n,t,q); //代码
}
}
答案
18:12:7:6
25. 多态性就是指父类的某个方法被其子类重写时,
可以各自产生自己的功能行为
(多:子类数目,态:父类某个方法)。
答案
是