Java日常练习题,每天进步一点点(7)

网友投稿 228 2022-10-10


Java日常练习题,每天进步一点点(7)

目录1、下面的代码运行的结果是:2、下面有关java实例变量,局部变量,类变量和final变量的说法,错误的是?3、执行如下代码段后,变量s1引用的字符串值是( )。4、类A1和类A2在同一包中,类A2有个protected的方法testA2,类A1不是类A2的子类(或子类的子类),类A1可以访问类A2的方法testA2。( )5、在一个基于分布式的游戏服务器系统中,不同的服务器之间,哪种通信方式是不可行的()?6、下面有个hibernate延迟加载,说法错误的是?7、下面关于Spring的说法中错误的是()8、servlet周期包含哪些:9、已知如下的命令执行 java MyTest a b c 请问哪个语句是正确的? ( )10、关于java集合下列说法不正确的有哪些()答案汇总:

承蒙各位厚爱,我们一起每天进步一点点!(鼠标选中空白处查看答案)

1、下面的代码运行的结果是:

class B extends Object

{

static

{

System.out.println("Load B");

}

public B()

{

System.out.println("Create B");

}

}

class A extends B

{

static

{

System.out.println("Load A");

}

public A()

{

System.out.println("Create A");

}

}

public class Testclass

{

public static void main(String[] args)

{

new A();

}

}

正确答案: B

Load B ->Create B->Load A -> Create A

Load B -> Load A ->Create B ->Create A

Load B -> Create B-> Create A -> Load A

Create B ->Create A ->Load B ->Load A

题解:

初始化块在构造器执行之前执行,类初始化阶段先执行最顶层父类的静态初始化块,依次向下执行,最后执行当前类的静态初始化块;创建对象时,先调用顶层父类的构造方法,依次向下执行,最后调用本类的构造方法。

父类静态代码块-》子类静态代码块-》父类构造代码块-》父类构造函数-》子类构造代码块-》子类构造函数

初始化过程:

1.初始化父类中的静态成员变量和静态代码块 ;

2.初始化子类中的静态成员变量和静态代码块 ;

3.初始化父类的普通成员变量和代码块,再执行父类的构造方法;

4.初始化子类的普通成员变量和代码块,再执行子类的构造方法

2、下面有关java实例变量,局部变量,类变量和final变量的说法,错误的是?

正确答案: B

实例变量指的是类中定义的变量,即成员变量,如果没有初始化,会有默认值。

局部变量指的是在方法中定义的变量,如果没有初始化,会有默认值

类变量指的是用static修饰的属性

final变量指的是用final 修饰的变量

题解:

局部变量必须有初始值

3、执行如下代码段后,变量s1引用的字符串值是( )。

String s1 = “ABCD”;

String s2 = “1234”;

System.out.println(s1 + s2);

正确答案: A

ABCD

1234

ABCD1234

1234ABCD

题解:

变量s1引用的字符串值是

这题出的牛,有谁跟我一样看见输出就觉得选C

其实题问的就是s1,牛这题

4、类A1和类A2在同一包中,类A2有个protected的方法testA2,类A1不是类A2的子类(或子类的子类),类A1可以访问类A2的方法testA2。( )

正确答案: A

正确

错误

5、在一个基于分布式的游戏服务器系统中,不同的服务器之间,哪种通信方式是不可行的()?

正确答案: A

管道

消息队列

高速缓存数据库

套接字

题解:

管道( pipe ):管道是一种半双工的通信方式,数据只能单向流动,而且只能在具有亲缘关系的进程间使用。进程的亲缘关系通常是指父子进程关系。

既然是不同的服务器之间进行通信,怎么可能会是具有亲缘关系的进程呢?

6、下面有个hibernate延迟加载,说法错误的是?

正确答案: C

Hibernate2延迟加载实现:a)实体对象 b)集合(Collection)

Hibernate3 提供了属性的延迟加载功能

get支持延迟加载,load不支持延迟加

hibernate使用Java反射机制,而不是字节码增强程序来实现透明性

题解:

get()采用立即加载方式,而load()采用延迟加载

7、下面关于Spring的说法中错误的是()

正确答案: D

Spring是一系列轻量级Java EE框架的集合

Spring中包含一个“依赖注入”模式的实现

使用Spring可以实现声明式事务

Spring提供了AOP方式的日志系统

题解:

Spring并没有为我们提供日志系统,我们需要使用AOP(面向方面编程)的方式,借助Spring与日志系统log4j实现我们自己的日志系统。

8、servlet周期包含哪些:

正确答案: A B C

初始化

销毁

请求处理

开始

9、已知如下的命令执行 java MyTest a b c 请问哪个语句是正确的? ( )

正确答案: C D

args[0] = “MyTest a b c”

args[0] = “MyTest”

args[0] = “a”

args[1]= "b"

题解:

题目这样理解:java命令执行MyTest类下的main函数,命令行输入java MyTest a b c,请问入参中对应的args为如下哪种?

main函数格式如下:public static void main(String[] args),入参中有一个String[] args,这是一个字符串数组,它早期是为了接收键盘录入的数据的,而现在被Scanner(JDK 1.5以后才出现)所替代,通过String[] args录入数据的格式是 java 类名(main方法所在类的类名) 字符串1 字符串2 字符串3 …。对应本题,args[0]=a args[1]=b args[2]=c

1http://0、关于java集合下列说法不正确的有哪些()

正确答案: A B D

HashSet 它是线程安全的,不允许存储相同的对象

ConcurrentHashMap 它是线程安全的,其中存储的键对象可以重复,值对象不能重复

Collection接口是List接口和Set接口的父接口,通常情况下不被直接使用

ArrayList线程安全的,允许存放重复对象

题解:

A: HashSet 它不是线程安全的,属于Set接口下的实现类,Set下的实现类特征就是无序,不允许存储相同的对象

B: ConcurrentHashMap 它是线程安全的HashMap实现,特征也相似,其中存储的值对象可以重复,键对象不能重复

C: Collection接口是List接口和Set接口的父接口,通常情况下不被直接使用

D: ArrayList线程不安全的,底层是数组实现,允许存放重复对象

答案汇总:

1、正确答案: B

2、正确答案: B

3、正确答案: A

4、正确答案: A

5、正确答案: A

6、正确答案: C

7、正确答案: D

8、正确答案: A B C

9、正确答案: C D

10、正确答案: A B D


版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:NAT——网络内部计算机的保护伞(nat如何实现内网保护)
下一篇:弱口令检测及端口扫描(如何防御端口扫描)
相关文章

 发表评论

暂时没有评论,来抢沙发吧~