Java面试之爱立信

1.两个线程中同时对两个方法进行锁定/解锁操作,什么情况下会出现死锁?
eg. (exempli gratia 举例,拉丁文简写而来)
process 1: lock(m1) lock(m2) unlock(m2) unlock(m1)
process 2: lock(m1) unlock(m1) lock(m2) unlock(m2)
2.一个不完全二叉树的遍历,先根中根后根遍历的结果是什么?
3.一组整数 5 1 4 2 8用冒泡排序,第一步运行后的结果为1 5 4 2 8,那么第四步的结果是多少?
4.用递归实现0到n-1的输出。

void  fn(int n){
    if(--n > 0) fn(n);
    System.out.println(n);
}

5.实现4个线程,2个对共享变量加1,2个对共享变量减1,输出最后的结果。
6.用代码实现,通知将商品添加到购物车的用户商品价格的变动。
7.事务的特性有哪些?

事务应该具有4个属性:原子性、一致性、隔离性、持久性。这四个属性通常称为ACID特性。
原子性(Atomicity[ˌætəˈmɪsɪti]):事务是一个原子操作,由一系列动作组成。事务的原子性确保
动作要么全部完成,要么完全不起作用。
一致性(Consistency [kənˈsɪstənsi] ):一旦事务完成(不管成功还是失败),系统必须确保它
所建模的业务处于一致的状态,而不会是部分完成部分失败。在现实中的数据不应该被破坏。
隔离性(Isolation[ˌaɪsəˈleʃən]):可能有许多事务会同时处理相同的数据,因此每个事务都应该
与其他事务隔离开来,防止数据损坏。
持久性(Durability[ˌdjʊrəˈbɪlətɪ]):一旦事务完成,无论发生什么系统错误,它的结果都不应
该受到影响,这样就能从任何系统崩溃中恢复过来。通常情况下,事务的结果被写到持久化存储器中。

8.throws 与 throw 的区别?
9.Java的操作符有哪些?
10.Java的关键字不包含哪些?
11.怎样查看索引是否有效,索引失效的情况有哪些?

查看方法:
-- (Oracle)查寻到的值如果不是VALID[ˈvælɪd] ,则表示索引失效
select status from user_indexes 
失效情况:
查询条件中用or;
对于多列索引,不是使用的第一列字段;
like的模糊查询以%开头;
查询字段的类型与数据库中对应的列类型不一致;
在索引字段上进行计算、使用函数;
使用 IS NULL查询(is not null还是用索引的);
重建索引:
alter index ind_name rebuild

12.描述Spring MVC 的运行流程是怎样的?
13.Hibernate 和 MyBatis 的缓存机制是怎样的?
14.集合类有哪些接口以及实现方法?

  • 0
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值