概述
Java面试题自用八(选择题)
1.关于final说法正确的是?()
A、final类的方法肯定不能被同一个包的类访问
B、final类的方法能否被同一个包的类访问不是由final决定的
C、final方法等同于private方法
D、final对象本身的引用和值都不能改变
解析:
A:错误,能否被同一个包的类访问取决于访问修饰符(public、protect、default、private)。
B:正确 C:错误
D:错误。final如果修饰的基本数据类型,则其数值一旦初始化后就不能被改变。如果是引用类型的变量,则对其初始化后,便不能再指向另一个对象,但是其里面的值是可以改变的。
2.判断对错。在Java的多态调用中,new的是哪一个类就是调用的那个类的方法。
答案:错
解析:
1.成员变量:编译和运行都参考左边。静态绑定,即引用变量所声明的类型是哪一个,则运行哪个成员变量。在编译阶段就已经做出了决定。
2.成员函数(非静态):编译看左边,运行看右边。
3.静态函数:编译和运行都看左边。静态绑定,即引用的变量所声明的类型是哪一个,则运行哪一个静态方法。在编译阶段就已经做出了决定。
3.实现或继承了Collection接口的是()
A:Map B:List C:Vector D:Iterator E:Set
答案: B C E
4.关于访问权限说法正确 的是 ? ( )
A:外部类前面可以修饰public,protected和private
B:成员内部类前面可以修饰public,protected和private
C:局部内部类前面可以修饰public,protected和private
D:以上说法都不正确
答案:B
( 1 )对于外部类而言,它也可以使用访问控制符修饰,但外部类只能有两种访问控制级别: public 和默认。因为外部类没有处于任何类的内部,也就没有其所在类的内部、所在类的子类两个范围,因此 private 和 protected 访问控制符对外部类没有意义。
( 2 )内部类的上一级程序单元是外部类,它具有 4 个作用域:同一个类( private )、同一个包( protected )和任何位置( public )。
( 3 ) 因为局部成员的作用域是所在方法,其他程序单元永远不可能访问另一个方法中的局部变量,所以所有的局部成员都不能使用访问控制修饰符修饰。
5.在Java中,关于HashMap类的描述,以下正确的是 ()
A:HashMap使用键/值得形式保存数据
B:HashMap 能够保证其中元素的顺序
C:HashMap允许将null用作键
D:HashMap允许将null用作值
答案:A C D
6.以下代码执行的结果显示是多少()?
public class Demo{
public static void main (String args[]){
int count = 0;
int num = 0;
for(int i = 0;i<100;i++){
num = num + i;
count = count++;
}
System.out.println("num*count= "+(num*count));
}
}
A:50500
B:0
C:运行时错误
D:5050
答案:B
解释:count = count++;的原理为 先赋值后++
temp = count;//count = 0, temp = 0
count = count + 1;//count = 1
count = temp;//temp = 0,count = 0
7.指出下来程序运行的结果是
public class Example{
String str = new String("good");
char[] ch = {'a','b','c'};
public static void main (String args[]){
Example ex = new Example();
ex.change(ex.str,ex.ch);
System.out.print(ex.str + "and");
System.out.print(ex.ch);
}
public void change(String str,char ch[]){
str = "test ok";
ch[0] = "g";
}
}
A:good and abc
B:good and gbc
C:tst ok and abc
D:tst ok and gbc
答案:B
因为String是被final修饰的类,所以本身的内容是不会改变的,相当于基本数据类型的值传递,在change方法中给str赋值了“test”,相当于重新创建了一个string类型的变量
8.以下哪些方法可以取到http请求中的cookie值()?
A:request.getAttribute
B:request.getHeader
C:request.getParameter
D:request.getCookies
答案: B D
1)Object getAttribute(String name)
以对象形式返回已命名属性的值,如果没有给定名称的属性存在,则返回 null。
2)String getHeader(String name)
以字符串形式返回指定的请求头的值。Cookie也是头的一种;
3)String getParameter(String name)
以字符串形式返回请求参数的值,或者如果参数不存在则返回 null。
4)Cookie[] getCookies()
返回一个数组,包含客户端发送该请求的所有的 Cookie 对象。
的一种;
3)String getParameter(String name)
以字符串形式返回请求参数的值,或者如果参数不存在则返回 null。
4)Cookie[] getCookies()
返回一个数组,包含客户端发送该请求的所有的 Cookie 对象。
*
*
*
*
*
*
*
*
*
以上题目来自于牛客本人的错题,如有更好的解释欢迎评论。
最后
以上就是追寻豌豆为你收集整理的Java面试题自用八(选择题)Java面试题自用八(选择题)的全部内容,希望文章能够帮你解决Java面试题自用八(选择题)Java面试题自用八(选择题)所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复