1.java的动态代理实现的原理是什么?动态代理技术适用的场景是什么?
参考答案:java的动态代理是基于JDK中Proxy和InvocationHandler来实现的,InvocationHandler用于实现接口的方法和业务的增强,
Proxy通过调用native方法在内存中生成字节码,从而生成指定接口的实现类和实例;动态代理技术适用于对系统进行无侵入性的增强的
时候适用;
2.在文字处理软件中,需要快速检查一个英语单词是否拼写正确,应该用什么算法?
参考答案:布隆过滤器算法,它是一个空间效率极高的概率型算法;它实际上是一个很长的二进制向量和一系列随机映射函数;可以用于快速检索一个
元素是否在一个集合中;针对文字处理软件,可以先把所有的英文单词存入布隆过滤器中,每写完一个单词,从布隆过滤器中迅速判断这个单词是不是
词库中的一个,如果存在说明拼写正确,如果不存在说明拼写错误;
3.HashMap与HashTable 区别
相同点:都可用于存储key-value数据
不同点:1,HashMap的key和valu可以存储null而HashTable不行
2.HashMap线程不安全但是效率高,HashTable线程安全但是效率低
4.需要诊断一个SQL语句是否用到索引的描述正确的是?
A、执行计划table 列
B、执行计划rows列
C、执行计划key列
D、执行计划ref列
在这里插入代码片