Java日常练习题,每天进步一点点(26)
承蒙各位厚爱,我们一起每天进步一点点!(鼠标选中空白处查看答案)
1、定义:String s1 = “uml”; String s2 = “uml”; String s3= new String(“uml”); String s4= new String(“uml”);那么,s1==s2;s3 == s4;s1.equals(s3); 判断正确与否
正确答案: A
T,F,T
F,T,F
题解:
2、若所用变量都已正确定义,以下选项中,非法的表达式是()
正确答案: C
a!= 4||b==1
'a' % 3
'a' = 1/3
'A' + 32
题解:
C中的‘a'是char类型,1/3是int类型。将int赋值给char属于从高向低赋值,所以错误
3、socket编程中,以下哪个socket的操作是不属于服务端操作的()?
正确答案: C
accept
listen
connect
close
题解:
TCP客户端:
1.建立连接套接字,设置Ip和端口监听,socket()
2.建立连接 connect
3.write() 获取网络流对象 发送数据
4.read()获取网络流对象 接收数据
5.关闭套接字
TCP服务器端
1.建立端口监听 socket()
2.绑定指定端口 bind()
3.listen 进行端口监听
4.accept() 阻塞式 直到有客户端访问
5.read()获取客户端发送数据
6.write()发送返回数据
7.close关闭端口监听
4、java如何返回request范围内存在的对象?
正确答案: B
request.getRequestURL()
request.getAttribute()
request.getParameter()
request.getWriter()
题解:
request.getAttribute()方法返回request范围内存在的对象,而request.getParameter()方法是获取http提交过来的数据。getAttribute是返回对象,getParameter返回字符串。
5、以下哪个不属于JVM堆内存中的区域()?
正确答案: B
survivor区
常量池
eden区
old区
题解:
jvm堆分为:新生代(一般是一个Eden区,两个Survivor区),老年代(old区)。常量池属于 PermGen(方法区)
6、如下代码的输出结果是什么?
public class Test {
public int aMethod(){
static int i = 0;
i++;
return i;
}
public static void main(String args[]){
Test test = new Test();
test.aMethod();
int j = test.aMethod();
System.out.println(j);
}
}
正确答案: D
0
1
2
编译失败
题解:
Java中静态变量只能在类主体中定义,不能在方法中定义。 静态变量属于类所有而不属于方法
7、以下JAVA程序代码的输出是
public static void main(String args[]) {
System.out.println(17^5);
}
正确答案: C
12
22
20
1419857
题解:
异或运算,位异运算符号。
运算规则是:两个数转为二进制,然后从高位开始比较,如果相同则为0,不相同则为1。
17:0001 0001
5: 0000 0101
结果:0001 0100 转10进制:20
8、下面哪些情况可以引发异常:
正确答案: A B C
数组越界
指定URL不存在
使用throw语句抛出
使用throws语句
题解:
throws 和 throw:
throws出现在方法头,表示可能会出现异常;
throw是在方法体,抛出了异常,执行throw则一定抛出了某种异常
9、关于Java的一些概念,下面哪些描述是正确的:( )
正确答案: B F
所有的Java异常和错误的基类都是java.lang.Exception, 包括java.lang.RuntimeException
通过try … catch … finally语句,finally中的语句部分无论发生什么异常都会得到执行
java中所有的数据都是对象
Java通过垃圾回收回收不再引用的变量,垃圾回收时对象的finallize方法一定会得到执行
Java是跨平台的语言,无论通过哪个版本的Java编写的程序都能在所有的Java运行平台中运行
Java通过synchronized进行访问的同步,synchronized作用非静态成员方法和静态成员方法上同步的目标是不同的
题解:
A、java异常和错误的基类Throwable,包括Exception和Error
B、try…catch…finally finally不管什么异常都会执行
C、java是面向对象的,但是不是所有的都是对象,基本数据类型就不是对象,所以才会有封装类的;
D、如果是等待清理队列中如果又被调用,则不会执行finallize方法
E、JAVA跨平台性 实现在任意平台的java程序都可以在其他平台运行,题中说的版本不同
F、synchronized实现方式:三种
10、关于运行时常量池,下列哪个说法是正确的
正确答案: B C D
运行时常量池大小受栈区大小的影响
运行时常量池大小受方法区大小的影响
存放了编译时期生成的各种字面量
存放编译时期生成的符号引用
题解:常量池在方法区
答案汇总:
1、正确答案: A
2、正确答案: C
3、正确答案: C
4、正确答案: B
5、正确答案: B
6、正确答案: D
7、正确答案: C
8、正确答案: A B C
9、正确答案: B F
10、正确答案: B C D
总结
本篇文章就到这里了,希望能给你带来帮助,也希望您能够多多关注编程网的更多内容!
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341