1. 假设有类 Iphone 下列可以正确创建对象的格式是( )。
[单选题] *
Iphone t =1 ; |
Iphone t = new Iphone () ;(正确答案) |
Iphone t = new Iphone ; |
Iphone t = Iphone () ; |
2. main()方法的返回类型是什么?
[单选题] *
int |
void(正确答案) |
boolean |
static |
3. 下列有关类、对象和实例的叙述,正确的是哪一项?
[单选题] *
类就是对象,对象就是类,实例是对象的另一个名称,三者没有差别 |
对象是类的抽象,类是对象的具体化,实例是对象的另一个名称 |
类是对象的抽象,对象是类的具体化,实例是类的另一个名称 |
类是对象的抽象,对象是类的具体化,实例是对象的另一个名称(正确答案) |
4. 有关new关键字的描述正确的是哪项?
[单选题] *
创建对象实例的时候可以不使用new关键字 |
new所创建的对象不占用内存空间 |
new会调用类的构造器来创建对象(正确答案) |
new所创建的对象一定存在引用变量 |
5. 以下关于面向对象概念的描述中,不正确的一项是( )
[单选题] *
在现实生活中,对象是指客观世界的实体 |
程序中的对象就是现实生活中的实体对象(正确答案) |
在程序中,对象是通过一种抽象数据类型来描述的,这种抽象数据类型称 为类(class) |
在程序中,对象是一组变量和相关方法的集合 |
6. 在创建对象时,必须( )
[单选题] *
先声明对象,然后才能使用对象 |
先声明对象,为对象分配内存空间,然后才能使用对象 |
先声明对象,为对象分配内存空间,对对象初始化,然后才能使用对象(正确答案) |
上述说法都对 |
7. 在Java语言中,被称为内存分配的运算符是()
[单选题] *
new(正确答案) |
instanceof |
中括号 |
() |
8. 设 i、j、k 为类 x 中定义的 int 型变量名,下列类 x 的构造方法中不正确的是( )。
[单选题] *
x( int i){ ... } |
void x( int i){ ... }(正确答案) |
x( int i, int j){ ... } |
x( int i,int j,int k){ ... } |
9. 下列方法定义中,正确的是( )。
[单选题] *
int x( ){ char ch='a'; return (int)ch; }(正确答案) |
void x( ){ ...return true; } |
int x( ){ ...return true; } |
int x( int a, b){ return a+b; } |
10. 构造方法名必须与( )相同,它没有返回值,用户不能直接调用它,只能通过new调用。
[单选题] *
类名(正确答案) |
对象名 |
包名 |
变量名 |
11. 判断方法重载的依据,错误的是( )。
[单选题] *
必须在同一个类中 |
方法名不同(正确答案) |
方法参数的个数、顺序或类型不同 |
与方法的修饰符或返回值没有关系 |
12. 编译一个定义了两个类和三个方法的Java源文件,总共会生成( )个字节码文件。
[单选题] *
5个字节码文件,以“.java”为扩展名 |
2个字节码文件,以“.java”为扩展名 |
5个字节码文件,以“.class”为扩展名 |
2个字节码文件,以“.class”为扩展名(正确答案) |
13. 有关类的说法,正确的是( )。
[单选题] *
类具有封装性,所以类的数据是不能被访问的 |
类具有封装性,但可以通过类的公共接口访问类中的数据(正确答案) |
声明一个类时,必须使用public修饰符 |
每个类中必须有main方法,否则程序无法运行 |
14. 下面的方法重载正确的是( )。
[单选题] *
int fun (int a, float b){} 和 float fun(int a, float b){} |
float fun (int a, float b) {} 和 float fun (int x, float y){} |
float fun (float a){} 和 float fun(float a, float b){}(正确答案) |
float fun1 (int a, float b){} 和 float fun2(int a ,float b){} |
15. 关于方法main()的说法哪个正确?( )
[单选题] *
方法main()只能放在公共类中 |
main()的头定义可以根据情况任意更改 |
一个类中可以没有main()方法(正确答案) |
所有对象的创建都必须放在main()方法中 |
16. 下列说法哪个正确?( )
[单选题] *
不需要定义类,就能创建对象 |
对象中必须有属性和方法 |
属性可以是简单变量,也可以是一个对象(正确答案) |
属性必须是简单变量 |
17. 构造方法何时被调用? ( )
[单选题] *
创建对象时(正确答案) |
类定义时 |
使用对象的方法时 |
使用对象的属性时 |
18. return语句:( )
[单选题] *
只能让方法返回数值 |
方法都必须含有 |
方法中可以有多句return(正确答案) |
不能用来返回对象 |
19. void的含义:( )
[单选题] *
方法没有返回值(正确答案) |
方法体为空 |
没有意义 |
定义方法时必须使用 |
20. 程序Test.java编译运行后输出的结果是( )。
public class Test {
String s1=""java"";
public static void main(String args[]) {
int z=2;
Test t=new Test();
System.out.println(t.s1+z);
}}
[单选题] *
java2(正确答案) |
2 |
没有输出结果 |
java |
21. 关于下面的程序Test.java说法正确的是( )。
public class Test {
String x=""1"";
int y;
public static void main(String args[]) {
int z=2;
System.out.println(x+y+z);
}}
[单选题] *
3 |
102 |
12 |
程序有编译错误(正确答案) |
22. 给出下面的代码
public class Person{
int arr[] = new int[10];
public static void main(String a[]) {
System.out.println(arr[1]);
}
}
哪个叙述是对的?
[单选题] *
编译时出错(正确答案) |
编译时正确而运行时出错 |
输出0 |
输出null |
23. 下列类Account的构造方法中,声明正确的是?
[单选题] *
Account (String name){}(正确答案) |
Account (String name) |
Account (name)() |
NewAccount (String name){} |
24. 下列哪个叙述是正确的?
[单选题] *
Java应用程序由若干个类所构成,这些类必须在一个源文件中 |
Java应用程序由若干个类所构成,这些类可以在一个源文件中,也可以分布在若干个源文件中,其中必须有一个源文件含有主类(正确答案) |
Java源文件必须含有主类 |
Java源文件如果含有主类,主类必须是public类 |
25. 下列哪个叙述是正确的?
[单选题] *
成员变量的名字不可以和局部变量名字相同 |
方法的参数的名字可以和方法中声明的局部变量的名字相同 |
成员变量没有默认值 |
局部变量没有默认值(正确答案) |
26. "对于下列Hello类,哪个叙述是正确的?
class Hello{
Hello(int m){
}
int Hello(){
return 20;
}
hello(){
}
}"
[单选题] *
Hello类有2个构造方法 |
Hello类的int Hello()方法是错误的方法 |
Hello类没有构造方法 |
Hello无法通过编译,因为其中的hello方法的方法头是错误的(没有类型)(正确答案) |
27. "对于下列Dog类,哪个叙述是错误的?
class Dog{
Dog(int m){
}
Dog(double m){
}
int Dog(int m){
return 23;
}
void Dog(doule m){
}
}"
[单选题] *
Dog(int m)与Dog(double m)互为重载的构造方法 |
int Dog(int m)与void Dog(double m)互为重载的非构造方法 |
Dog类只有两个构造方法,而且没有五参数的构造方法 |
Dog类有3个构造方法(正确答案) |
28. 下列哪个叙述是正确的?
[单选题] *
成员变量在整个类内部有效,其有效性与它在类中书写的先后位置无关(正确答案) |
类体中一行只能声明一个变量 |
类体中,成员变量有效范围和声明的位置有关,从生命位置开始有效 |
方法体内不可以对成员变量进行操作,只能对方法体中声明的局部变量进行操作 |
29. "当用new运算符和构造方法创建对象时,需要以下步骤,顺序正确的是()
1.为成员变量分配内存,并指定默认值
2.初始化成员变量,即用户声明成员变量时给定的默认值
3.执行构造方法
4.计算出一个引用值"
[单选题] *
1234(正确答案) |
4123 |
3124 |
1243 |
30. "对于下列Dog类,哪个叙述是正确的?
public class Test{
public static void main(String[] args){
Dog dog=new Dog();
}
}
class Dog{
void Dog(){
System.out.println(""小狗"");
}
}" [单选题] *
程序运行时输出:小狗 |
有两个构造方法 |
没有构造方法 |
程序运行时无任何输出结果(正确答案) |
31. 下列哪些是方法public int add (int a)的重载方法?(选三项)
*
public int add (long a);(正确答案) |
public void add (int a); |
public void add (long a);(正确答案) |
public int add (float a);(正确答案) |
32. 下列哪些叙述是错误的?
*
成员变量的名字不可以和局部变量相同(正确答案) |
方法的参数的名字可以和方法中声明的局部变量同名(正确答案) |
成员变量没有默认值(正确答案) |
局部变量没有默认值 |
33. 构造方法没有类型
[判断题] *
对(正确答案) |
错 |
34. 方法重载的意思是:一个类中可以有多个方法具有相同的名字,但方法的参数必须不同
[判断题] *
对(正确答案) |
错 |
35. 构造方法不可以重载
[判断题] *
对 |
错(正确答案) |
36. 当方法被调用时,参数被分配内存空间,调用者向参数传递值,即方法被调用时,参数变量必须有具体的值
[判断题] *
对(正确答案) |
错 |