首页 存档 技术 查看内容

选择题 | 7 Java对象的应用

2018-3-30 13:00 |来自: 互联网 459 0

摘要: ===Tips:点击上方蓝字查看历史消息=== 1.关于数据类型,以下说法不正确的是(A)。 A.引用类型变量存储对象的成员变量和成员方法等信息 B.数据类型可以分为基本类型和引用类型 C.基本类型变量存储基本类型常 ...

===Tips:点击上方蓝字查看历史消息===



1.关于数据类型,以下说法不正确的是(A)。

A.引用类型变量存储对象的成员变量和成员方法等信息

B.数据类型可以分为基本类型和引用类型

C.基本类型变量存储基本类型常量

D.引用类型变量存储对象的引用


2.以下说法中正确的是(C)。

A.1是int型变量

B.1.0是float型常量

C."1"是String类型字符串,不是基本类型数据

D.'1'不是基本类型常量


3.关于引用类型,以下说法不正确的是(B)。

A.对象名是引用类型变量的标识符

B.引用类型变量可以直接参与算数运算

C.数组名是引用类型变量

D.引用类型变量就是以类或数组作为数据类型的变量


4.关于变量之间的赋值,以下说法不正确的是(A)。

A.引用类型变量间的赋值复制的是对象

B.无论哪种类型变量,变量间赋值都是变量中值的复制

C.基本类型变量间的赋值复制的是变量中的值

D.数组名间的赋值复制的不是数组的元素


5.关于语句String s1=new String("abc"), s2=s1;的作用,下列说法正确的是(D)。

A.s2和s1引用两个不同的字符串,但这两个字符串的内容相同

B.s2=s1;的作用是将s1对象的成员变量赋给s1的对应成员变量

C.s2和s1引用的内存空间是独立的

D.s1和s2是同一个对象的两个不同名字


6.关于语句int a[ ]={1, 2, 3}, b[ ]; b=a;,下列说法不正确的是(B)。

A.执行后a和b都引用同一个数组

B.执行后a和b是两个不同的数组,但数组的元素相同

C.执行b[0]=5;之后,则a[0]也是5

D.执行a[1]=6;之后,则b[1]也是6


7.关于方法的参数,以下说法错误的是(A

A.形式参数如果是引用类型,则实际参数既可以是基本类型也可以是引用类型

B.形式参数如果是引用类型,则实际参数向形式参数传递的不是对象的成员变量

C.形式参数如果是引用类型,则实际参数向形式参数传递的是对象的引用

D.无论方法的形式参数是何种类型,实际参数向形式参数传递的都是其中的值


8.关于方法的参数,以下说法正确的是(C

A.形式参数如果是引用类型,方法体不能改变实际参数引用的对象的成员变量

B.形式参数如果是基本类型,方法体能够改变实际参数的值

C.无论方法的形式参数是何种类型,方法体都不能改变实际参数的值

D.无论方法的形式参数是何种类型,方法体都可以改变实际参数的值


9.调用方法时,若要进行参数的引用传递,参数类型可以是(D)。

A.整型

B.实型

C.字符型

D.类


10.调用方法时,若要进行参数的引用传递,参数类型不可以是(C)。

A.一维数组

B.类

C.整型

D.二维数组


11.调用方法时,若形式参数是一维数组,以下说法正确的是(A)。

A.形式参数的类型说明符需包含[ ]

B.形式参数的类型说明符需包含[数组大小]

C.实际参数如果是变量,标识符后需包含[ ]

D.实际参数如果是变量,标志符后需要包含[数组大小]


12.方法的返回值类型可以是(D)。

A.数组

B.类

C.基本类型

D.以上都可以


13.若方法的返回值是一维数组,以下说法正确的是(B)。

A.返回值类型说明符需包含[数组大小]

B.返回值类型说明符需包含[ ]

C.return后如果是变量,标识符后需包含[ ]

D.return后如果是变量,标识符后需包含[数组大小]


14.若非静态方法返回一个类的对象p,以下说法不正确的是(B)。

A.p可以是this指针

B.p如果是方法内创建的对象,方法结束后该对象的空间会被垃圾回收

C.p可以是方法的参数

D.p可以是匿名对象


15.执行语句String str[ ] = new String[5];后,以下说法正确的是(D)。

A.变量str的空间中存储5个字符串

B.数组str的每个元素的空间都存储1个字符串

C.数组str的每个元素的空间都存储一个空字符串""的引用

D.数组str的每个元素都是null,还需要为每个元素引用的字符串分配空间


16.执行语句int arr[ ][ ]=new int[5][6];后,以下说法错误的是(A)。

A.arr[0]的空间存储6个整型数据

B.arr[0]存储的是第0行元素构成的数组的引用

C.arr存储的是二维数组的引用

D.arr[0][0]的空间存储1个整型数据


17.关于匿名对象,以下说法不正确的是(A)。

A.一个匿名对象可以多次使用

B.匿名对象常用于方法的实际参数和返回值

C.可以访问匿名对象的成员变量和成员方法

D.匿名对象就是没有给引用分配变量名的对象


18.关于垃圾回收,以下说法正确的是(D)。

A.一个对象的空间不再被任何变量引用时,立刻被垃圾回收

B.将一个引用类型变量赋为null将使其之前引用的空间被垃圾回收

C.可以在代码中强制一个对象被垃圾回收释放空间

D.一个对象的空间不再被任何变量引用时,可能被垃圾回收


19.已知类A的定义如下,则语句final A a= new A();后可以出现的语句是(B)。

class A

{

publicint t;

}

A.a = new A();

B.a.t = 1;

C.a = null;

D.以上都不可以出现


20.已知类A的定义如下,则语句A a= new A(1);后可以出现的语句是(D)。

class A{

publicfinal int t;

publicA(int t){

this.t= t;

}

}

A.a = new A(2);

B.a.t = 5;

C.a = null;

D.A和C都可以


21.语句final int[ ] a= {1, 2, 3};后可以出现的语句是(A)。

A.a[0] = 6;

B.a = newint[5];

C.A和B都可以出现

D.A和B都不可以出现


22.若A类具有一个类型为B类的成员变量,以下说法正确的是(B)。

A.A类对象的内存空间中包含B类对象的空间

B.A类对象的内存空间中包含B类对象的引用

C.A和B不能是同一个类

D.A类的构造方法中必须调用B类的构造方法


23.若A类具有一个类型为B类的成员变量,以下说法不正确的是(C)。

A.通过A类的对象可以访问B类对象的成员

B.A类对象具有B类对象的全部功能

C.复制A类对象只需要用浅拷贝方法复制全部属性的值即可

D.A类对象可以看做是B类对象的扩展


24.以下程序的输出的结果是(A)。

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);

}

}

A.java2

B.2

C.没有输出结果

D.java


25.已知结点Node类的定义如下,则执行语句Node p = new Node(1, null), q=new Node(2, p);后,以下说法不正确的是(C)。

class Node {

protected int data;

protected Node next;

public Node(int data, Node next) {

this.data = data;

this.next = next;

}

}

A.结点p是结点q的后继

B.q.next.next的值为null

C.将p和q看做一个链表,则p为表头

D.q.next.data的值为1


26.已知结点Node类的定义如下,且已定义Node类对象p,以下不是建立p的前驱结点q的语句是(D)。

class Node {

protected int data;

protected Node next;

public Node(int data, Node next) {

this.data = data;

this.next = next;

}

public void setNext(Node next) {

this.next = next;

}

}

A.Node q = newNode(11, p);

B.Node q = newNode(11, null); q.next = p;

C.Node q = newNode(11, null); q.setNext(p);

D.Node q = newNode(11, null); p.setNext(q);


27.已知结点Node类的定义如下,以下不能在p和其后续结点之间插入数据为10的结点的是(D)。

class Node {

protected int data;

protected Node next;

public Node(int data, Node next) {

this.data = data;

this.next = next;

}

public void setNext(Node next) {

this.next = next;

}

}

A.Node q = newNode(10, p.getNext()); p.setNext(q);

B.Node q = newNode(10, null); q.setNext(p.getNext()); p.setNext(q);

C.p.setNext(newNode(10, p.getNext()));

D.Node q = newNode(10, null); p.setNext(q); q.setNext(p.getNext());







声明:文章版权归原作者所有 部分文章转自互联网 如有侵权请联系 [邮箱地址] 删除

路过

雷人

握手

鲜花

鸡蛋

相关分类

返回顶部