- 定义类头时能使用的修饰符是( C )。
A、private B、 static C、 abstract D、 protected
2. 设 x、 y为已定义的类名,下列声明x类的对象x1的语句中正确的是( B )。
A、 static x x1; B、 public x x1=new x(int 123); C、 y x1; D、x x1=x( );
3. 抽象方法:( C )
A、可以有方法体 B、可以出现在非抽象类中
C、是没有方法体的方法 D、抽象类中的方法都是抽象方法
4. 在Java中,用package语句说明一个包时,该包的层次结构必须是(B )
A、与文件的结构相同 B、与文件目录的层次相同
C、与文件类型相同 D、与文件大小相同
5. 为AB类的一个无形式参数无返回值的方法method书写方法头,使得使用类名AB作为前缀就可以调用它,该方法头的形式为( A )
A、static void method( ) B、public void method( )
C.、final void method( ) D、abstract void method( )
//
为了使一个无参数、无返回值的方法能够通过类名来直接调用(而不需要创建类的实例),你需要将该方法声明为static。这是因为静态方法属于类本身,而不是类的实例。
6. 下列方法定义中,正确的是( A )
A、 int x( ){ char ch='a'; return (int)ch; }
B、void x( ){ ...return true; }
C、int x( ){ ...return true; }
D、 int x( int a, b){ return a+b; }
A、int x( ){ char ch='a'; return (int)ch; }
这个方法是正确的。它定义了一个名为x的方法,该方法没有参数,返回一个int类型的值。在方法体内,它创建了一个字符变量ch并赋值为'a',然后将这个字符转换为int类型(即字符的ASCII值)并返回。
B、void x( ){ ...return true; }
这个方法是不正确的。它定义了一个返回类型为void的方法x,但试图返回一个boolean类型的值true。在void方法中,你不应该使用return语句返回值(尽管在某些语言如JavaScript中,return;是合法的,但在这里我们假设是Java或C/C++)。
C、int x( ){ ...return true; }
这个方法也是不正确的。虽然它定义了一个返回类型为int的方法x,但它试图返回一个boolean类型的值true。在Java或C/C++中,你不能将一个boolean值赋给int类型的变量(除非进行显式的类型转换,但这里并没有)。
D、int x( int a, b){ return a+b; }
这个方法也是不正确的。虽然它意图定义一个有两个整数参数的int类型方法,但在声明参数b时忘记了指定其类型。正确的方法声明应该是int x(int a, int b){ return a+b; }。
因此,正确答案是A。
7. 下列语句序列执行后,i的值是(D )
int i=16;
do { i/=2; } while( i > 3 );
A、16 B、 8 C、 4 D、 2
8. JAVA中,实现继承的关键字是( C )
A、public B、class C、extends D、implements
9. 不能构成循环的语句是( C )
A、for 语句 B、while 语句
C、switch 语句 D、do__while 语句
10. 下面哪个单词是Java语言的关键字( B )
A、Float B、this C、string D、unsigned
11. 下面的代码段执行之后count的值是什么(D)
int count = 1;
for (int i = 1; i <= 5; i++) {
count += i; // = 1+1+2+3+4+5
}
System.out.println(count);
A、5 B、1 C、15 D、16
12. int[] my_Array;
my_Array=new int[5];
for(int count=0;count<=5;count++){
System.out.println(my_Array[count]);
}
以上Java代码运行的结果是( D )
A、将1,2,3,4,5输出到屏幕 B、将0,1,2,3,4输出到屏幕
C、将0,1,2,3,4,5输出到屏幕 D、将出现运行时异常
//D、将出现运行时异常 - 这是正确的。当count等于5时,my_Array[count]会尝试访问一个不存在的数组元素,这将导致ArrayIndexOutOfBoundsException。
13. 如果任何包中的子类都能访问超类中的成员,那么超类的成员应使用哪个访问控制修饰符(D )
A、private B、默认 C、void D、protected
15. 设有定义 int i=123;long j=456;下面赋值不正确的语句是(D )
A、j=i; B、j=(long)i; C、i=(int)j; D、i=j; // 大转小需要强制类型准换
16. JAVA中,访问修饰符限制性最高的是( A )
A、private B、protected C、blic D、friendly
17. 在Java语言中,下面变量命名合法的有( A )
-
- variable123 B、123variable C、private D、se lgasd
18. 下列语句描述正确的是( D )
A、if语句和 else语句必须成对出现。
B、while循环是先循环后判断,所以循环体至少被执行一次。
C、import语句在package定义之前。
D、接口中的方法如果没有显示声明访问控制修饰符,默认为public
19. 下列语句描述错误的是( A )
A、switch结构中必须有default语句。
//switch结构中必须有default语句。
这个描述是错误的。在Java(和其他一些语言)中,switch结构并不要求必须有default语句。default语句是可选的,用于处理那些没有在switch语句的case部分明确列出的值。
B、do…while循环是先循环后判断,所以循环体至少被执行一次。
C、同一个类的对象使用不同的内存段,但静态成员共享相同的内存空间。
D、实现一个接口,则在类中一定要实现接口中的所有方法。<<
20. 在JAVA语言中,下面关于类的描述正确的是( B )
A、一个子类可以有多个超类 B、一个超类可以有多个子类
C、子类可以使用超类的所有 D、子类一定比超类有更多的成员方法
21. 下列哪个类声明是正确的( B )
A、abstract private move(){} B、public abstract class Car{}
C、abstract final class HI{} D、protected private number;
22. 设 x = 1 , y = 2 , z = 3,则表达式 y+=z--/++x 的值是( A )
A、 3 B、 3. 5 C、 4 D、5
24. 下面哪个语句能定义一个字符变量( B )
A、char c1 = “5”; B、char c2 = ’3’ ;
C、char c4 = “562”; D、char c3 = ‘123’;
25. 下面哪条语句定义了5个元素的数组( A )
A、int [] a={22,23,24,25,12}; B、int a []=new int(5);
C、int [5] array; D、int [] arr;
26. 下面表达式中,用来访问数组中第一个值的是( C )
A、intArray[1] B、 intArray.1 C.intArray[0] D、intArray.0
27. 构造方法何时被调用(B )
A.类定义时 B.创建对象时 C.调用对象方法时 D.使用对象的变量时
28. 在Java语言中,如果你有下面的类定义:
abstract class Shape {
abstract void draw();
}
class Square extends Shape{}
如果你试图编译上面的代码会发生(B )。
A、一切成功编译 B、Shape可以编译Square不能编译
C、Square可以编译Shape不能编译 D、Shape.Square都不能编译
29.在Java中,关键字(A)使类不能派生出子类。
A、final B、public C、private D、void