java选择题
20.区分类中重载方法的依据是()。(A)形参列表的类型和顺序(B)不同的形参名称(C)返回值的类型不同(D)访问权限不同21.子类对象()直接向其父类赋值,父类对象()...
20.区分类中重载方法的依据是( )。
(A)形参列表的类型和顺序 (B)不同的形参名称
(C)返回值的类型不同 (D)访问权限不同
21.子类对象( )直接向其父类赋值,父类对象( )向其子类赋值。
(A)能,能 (B)能,不能
(C)不能,能 (D)不能,不能
22.Java语言类间的继承关系是( )。
(A)单继承 (B)多重继承
(C)不能继承 (D)不一定
23.Java语言接口间的继承关系是( )。
(A)单继承 (B)多重继承
(C)不能继承 (D)不一定
24.一个类实现接口的情况是( )。
(A)一次可以实现多个接口 (B)一次只能实现一个接口
(C)不能实现接口 (D)不一定
25.定义外部类的类头时,不可用的关键字是( )。
(A)public (B)final (C)protected (D)abstract
26.如果局部变量和成员变量同名,在局部变量作用域内引用成员变量的方法为:( )。
(A)不能引用,必须改名,使它们的名称不相同
(B)在成员变量前加this,使用this访问该成员变量
(C)在成员变量前加super,使用super访问该成员变量
(D)不影响,系统可以自己区分
27.( )是不正确的叙述。
(A)抽象类既可以做父类,也可以做子类
(B)abstract和final能同时修饰一个类
(C)抽象类中可以没有抽象方法,有抽象方法的类一定是抽象类或接口
(D)声明为final类型的方法不能在其子类中重新定义
28.给出下面程序代码:
byte[] a1, a2[];
byte a3[][];
byte[][] a4;
( )是不正确的数组操作语句。
(A)a2 = a1 (B)a2 = a3
(C)a2 = a4 (D)a3 = a4
29.关于数组,( )是不正确的叙述。
(A)数组是最简单的复合数据类型,是一系列数据的集合
(B)数组元素可以是基本数据类型、对象或其他数组
(C)定义数组时必须分配内存
(D)一个数组中所有元素都必须具有相同的数据类型
30.设有下列数组定义语句:
int a[] = {1, 2, 3};
( )是对此语句的错误叙述。
(A)定义了一个名为a的一维数组 (B)a数组有3个元素
(C)a数组元素的下标为1~3 (D)数组中每个元素的类型都是整数
如能解答,不胜感激!!! 展开
(A)形参列表的类型和顺序 (B)不同的形参名称
(C)返回值的类型不同 (D)访问权限不同
21.子类对象( )直接向其父类赋值,父类对象( )向其子类赋值。
(A)能,能 (B)能,不能
(C)不能,能 (D)不能,不能
22.Java语言类间的继承关系是( )。
(A)单继承 (B)多重继承
(C)不能继承 (D)不一定
23.Java语言接口间的继承关系是( )。
(A)单继承 (B)多重继承
(C)不能继承 (D)不一定
24.一个类实现接口的情况是( )。
(A)一次可以实现多个接口 (B)一次只能实现一个接口
(C)不能实现接口 (D)不一定
25.定义外部类的类头时,不可用的关键字是( )。
(A)public (B)final (C)protected (D)abstract
26.如果局部变量和成员变量同名,在局部变量作用域内引用成员变量的方法为:( )。
(A)不能引用,必须改名,使它们的名称不相同
(B)在成员变量前加this,使用this访问该成员变量
(C)在成员变量前加super,使用super访问该成员变量
(D)不影响,系统可以自己区分
27.( )是不正确的叙述。
(A)抽象类既可以做父类,也可以做子类
(B)abstract和final能同时修饰一个类
(C)抽象类中可以没有抽象方法,有抽象方法的类一定是抽象类或接口
(D)声明为final类型的方法不能在其子类中重新定义
28.给出下面程序代码:
byte[] a1, a2[];
byte a3[][];
byte[][] a4;
( )是不正确的数组操作语句。
(A)a2 = a1 (B)a2 = a3
(C)a2 = a4 (D)a3 = a4
29.关于数组,( )是不正确的叙述。
(A)数组是最简单的复合数据类型,是一系列数据的集合
(B)数组元素可以是基本数据类型、对象或其他数组
(C)定义数组时必须分配内存
(D)一个数组中所有元素都必须具有相同的数据类型
30.设有下列数组定义语句:
int a[] = {1, 2, 3};
( )是对此语句的错误叙述。
(A)定义了一个名为a的一维数组 (B)a数组有3个元素
(C)a数组元素的下标为1~3 (D)数组中每个元素的类型都是整数
如能解答,不胜感激!!! 展开
3个回答
展开全部
【1】 a
因为右移运算符“>>”的运算规则是将15的2进制值1111右移移位,高位(左边)补0,也就是 1111 --右移-->0111 转化为10进制就是7.
通常正整数右移操作相当于x/2
【2】 d
因为数组下标是从0开始的,新建一个100个元素的数组a他的下标应该是0-99,所以a[100]错误
【3】 b
Java标识符的命名规则:
1) 标识符由字母、数字、下划线“_”、美元符号“$”或者人民币符号“¥”组成,并且首字母不能是数字。
2) 不能把关键字和保留字作为标识符。
3) 标识符没有长度限制。
4) 标识符对大小写敏感。
a违反第一条规则,c和d违反第二条规则
【4】 d
这个是java默认的,没什么好解释的,可能是用的比较多,就这么设计的吧。
【5】 e
1 public class Foo{
2 public static void main(String args[]){
3 StringBuffer a = new StringBuffer("A");
4 StringBuffer b = new StringBuffer("B");
5 operate(a,b);
6 System.out.println(a+","+b);
7 }
8 static void operate(StringBuffer x,StringBuffer y){
9 x.append(y);
10 y=x;
11 }
12 }
在这段代码中有一个main方法,一个静态方法,main方法调用了静态方法。程序首先由main方法开始执行,创建了两个StringBuffer的对象,并分别赋值为A B(第3,4行)然后调用了这个类的静态方法operate(第5行)。operate方法需要2个参数,这个时候传入的a和b已经有初始值了,分别是A,B。这时程序运行到第9行,把y的值(也就是b的值“B”)添加到x的值(也就是a的值“A”)的末尾。这时x的值为“AB”。第10行将x的值赋值给y。那么现在Y的值也是AB。程序执行完此方法,开始执行第6行,打印“a+','+b”。打印结果就是 AB,AB
【6】 b
就这么规定的,没什么解释的。。
【7】 c
同上
【8】 a
因为int类型的变量在没有赋值时默认值是0,所以答案b是错的。
Demo类继承自Base类,其中count变量是private的,private类型的变量只有类本身才能访问。所以在父类中也不可能包含改变count 值的方法。因为父类不能访问count对象,而Demo类中也没有seter方法。
Demo子类也不能访问count,所以d也是错的。
【9】 c
java语言是不支持多继承的,为了解决类似问题,接口出现了。。
【10】 d
在THINK IN JAVA 3rd的12章里一个例子出现了UTF-16BE,测试结果
byte[] utf_16be = name.getBytes("utf-16be");
printbyte(utf_16be);
58 02 length = 2
是否可以解决您的问题?
因为右移运算符“>>”的运算规则是将15的2进制值1111右移移位,高位(左边)补0,也就是 1111 --右移-->0111 转化为10进制就是7.
通常正整数右移操作相当于x/2
【2】 d
因为数组下标是从0开始的,新建一个100个元素的数组a他的下标应该是0-99,所以a[100]错误
【3】 b
Java标识符的命名规则:
1) 标识符由字母、数字、下划线“_”、美元符号“$”或者人民币符号“¥”组成,并且首字母不能是数字。
2) 不能把关键字和保留字作为标识符。
3) 标识符没有长度限制。
4) 标识符对大小写敏感。
a违反第一条规则,c和d违反第二条规则
【4】 d
这个是java默认的,没什么好解释的,可能是用的比较多,就这么设计的吧。
【5】 e
1 public class Foo{
2 public static void main(String args[]){
3 StringBuffer a = new StringBuffer("A");
4 StringBuffer b = new StringBuffer("B");
5 operate(a,b);
6 System.out.println(a+","+b);
7 }
8 static void operate(StringBuffer x,StringBuffer y){
9 x.append(y);
10 y=x;
11 }
12 }
在这段代码中有一个main方法,一个静态方法,main方法调用了静态方法。程序首先由main方法开始执行,创建了两个StringBuffer的对象,并分别赋值为A B(第3,4行)然后调用了这个类的静态方法operate(第5行)。operate方法需要2个参数,这个时候传入的a和b已经有初始值了,分别是A,B。这时程序运行到第9行,把y的值(也就是b的值“B”)添加到x的值(也就是a的值“A”)的末尾。这时x的值为“AB”。第10行将x的值赋值给y。那么现在Y的值也是AB。程序执行完此方法,开始执行第6行,打印“a+','+b”。打印结果就是 AB,AB
【6】 b
就这么规定的,没什么解释的。。
【7】 c
同上
【8】 a
因为int类型的变量在没有赋值时默认值是0,所以答案b是错的。
Demo类继承自Base类,其中count变量是private的,private类型的变量只有类本身才能访问。所以在父类中也不可能包含改变count 值的方法。因为父类不能访问count对象,而Demo类中也没有seter方法。
Demo子类也不能访问count,所以d也是错的。
【9】 c
java语言是不支持多继承的,为了解决类似问题,接口出现了。。
【10】 d
在THINK IN JAVA 3rd的12章里一个例子出现了UTF-16BE,测试结果
byte[] utf_16be = name.getBytes("utf-16be");
printbyte(utf_16be);
58 02 length = 2
是否可以解决您的问题?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询