java面试资料整理,java报表开发技术

本文介绍了Java泛型的擦除原理,解释了Integer对象相等性的原因。深入讨论了MySQL的InnoDB存储引擎,包括Redo Log、两阶段提交的必要性以及索引优化策略。此外,还探讨了Redis的数据类型、分布式锁实现及Redis的持久化机制。
摘要由CSDN通过智能技术生成

4:泛型擦除(可能你知道泛型擦除,但是你知道为什么要进行泛型擦除么)

  • java和c#都有对泛型进行使用,但是java中得泛型是伪泛型,只有在编译期有效,具体效果也是用来在编译期对集合之类和数据集合进行类型校验。但是要注意得是泛型是在jdk1.5后推广得,这就为了兼容之前得jdk得版本,导致了泛型必须进行擦除。

5:代码如下

Integer a = new Integer(50);

Integer b = new Integer(50);

System.out.println(a==b);

  • 上面结果为true,因为JAVA的Integer有IntegerCache会缓存-128~127之间的对象,上面的new Integer(50)会自动调用Integer的valueOf()方法,通过该方法返回一个Integer对象,所以返回的是同一个对象,自然输出的值也为true。但是注意的是如果new的值超过了IntegerCache缓存范围值就为false了

  • 2020/07/06

MySQL篇

面试官:你平时开发用的什么数据库啊

小白:平常开发都用的mysql

面试官:那我们就来聊一聊mysql吧。你mysql一般用的什么存储引擎啊?

小白:因为业务需要我们试用的是支持事务的innodb的

面试官:那你知道innodb支持事务主要是怎么实现的么?

小白:是通过innodb特有的redolog,和采用两阶段提交来实现的。

面试官:那你可以说说redolog的理解,和两阶段提交是什么一个过程么?

小白:redolog就是为了防止每次对数据库的一个增删改的操作都去操作磁盘而设立的,也就是redolog节省了有关写的io消耗,而说到两阶段提交就要说说binlog了,binlog是server层的日志文件,记录了整个库的一个增删改的变化,redolog和binlog的区别主要有以下三点:

<
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值