知识单元三 类与对象-1

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. 当方法被调用时,参数被分配内存空间,调用者向参数传递值,即方法被调用时,参数变量必须有具体的值
[判断题] *

(正确答案)

  • 2
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Meteor.792

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值