实习准备
文章平均质量分 90
夜ASK
目标跟踪
展开
-
小米一面面试题(自整理答案)
小米面试题1.HashMap1.7之前是数组+链表,1.8是数组+链表+红黑树1.7数组是Entry,采用的是头插法,在扩容时会改变链表中元素原本的顺序,以至于在并发场景下导致链表成环的问题。1.8是Node,采用尾插入,在扩容时会保持链表元素原本的顺序,就不会出现链表成环的问题了。hashmap扩容机制:默认是16,当超过总容量的0.75f,也就是>12时会进行扩容,为什么是0.75呢?是因为满足统计学上的柏松分布,当扩容因子为0.75时达到最高的概率。每次扩容容量变为原来的两倍。1.原创 2021-01-19 16:24:25 · 2470 阅读 · 2 评论 -
SpringIOC和AOP(七)
IOCIOC详解地址Ioc—Inversion of Control,即“控制反转”,不是什么技术,而是一种设计思想谁控制谁?当然是IoC 容器控制了对象;控制什么?那就是主要控制了外部资源获取(不只是对象包括比如文件等)。为何是反转?因为由容器帮我们查找及注入依赖对象,对象只是被动的接受依赖对象,所以是反转;哪些方面反转了?依赖对象的获取被反转了。1.spring IOC支持的功能依赖注入依赖检查自动转配支持集合指定初始化方法和销毁方法2.BeanFactory:原创 2020-12-10 20:21:58 · 133 阅读 · 0 评论 -
Java继承多态、String、反射(六)
1.面试题两个子类继承一个父类。父类能调用子类的成员变量或方法不?两个子类之前能互相调用不?多态给解释一下?可以举一个现实生活中的例子不?都不能。所谓继承,为子类继承父类的一切(不包private和构造方法),即子类可以调用父类的方法或变量。但父类无权调用子类的方法或变量。不过在实例化子类时,会自动调用父类的构造方法,也可通过 super 调用父类的构造方法。现实中,男人和女人分别继承 “人” 类 ,人所具备的特性,男人和女人都有,如四肢,说话,以及思考等。但女人能生孩子,男人可不行。这原创 2020-12-05 17:24:12 · 154 阅读 · 0 评论 -
Java装箱拆箱和重载重写(五)
1.什么是装箱?什么是拆箱?学习地址装箱就是 自动将基本数据类型转换为包装器类型;拆箱就是 自动将包装器类型转换为基本数据类型装箱JavaSE5以前定义变量必须写成Integer x = new Integer(6);以后就可以直接赋值Integer x = 6;这就是装箱,感觉跟spring的自动装配是一样得。拆箱int n=x;看完上面那两句话可能了解概念了,做一道题我这个地方他爆红了,我idea好像引入过阿里的编码规范,他提示我这里是包装类,需要使用equals来判原创 2020-12-05 16:33:05 · 172 阅读 · 0 评论 -
Java泛型和判断对象相等(四)
1.Java泛型了解吗?什么是类型擦除?介绍一下常用的通配符?Java泛型是jdk5引入的新特性,泛型提供了编译时类型安全检测机制。当我们定义一个list集合是Integer类型的,我们添加String类型会自动报错。Java泛型是伪泛型,这是因为Java在编译期间,所有的泛型信息都会被擦掉,类型擦除看这个文章List<Integer> list = new ArrayList<>();list.add(12);//这里直接添加会报错list.add("a");Cla原创 2020-12-05 15:31:18 · 1606 阅读 · 0 评论 -
Java方法参数传递机制(三)
1.常量池jdk8 废弃了永久代,使用元空间来实现方法区,元空间在本地内存中,字符串常量池和运行时常量池逻辑上属于方法区,但是实际存放在堆内存中,因此既可以说两者存放在堆中,也可以说两则存在于方法区中。方法参数传递机制import java.util.Arrays;public class Test { public static void main(String[] args) { int i = 1; String str = "hello";原创 2020-12-05 15:31:14 · 124 阅读 · 0 评论 -
Java类初始化(二)
1.类初始化过程一个类要创建实例需要先加载并初始化该类– main方法所在的类需要先加载和初始化一个自类要初始化需要先初始化父类一个类初始化就是执行< clinit>()方法,编译器生成的方法– < clinit>()方法由静态类变量显示赋值代码和静态代码块组成– 类变量显示赋值代码和静态代码块代码从上到下顺序执行– < clinit>()方法只执行一次考点:类初始化过程,实例初始化过程,方法的重写/** * 父类初始化<clinit&g原创 2020-12-04 22:20:22 · 102 阅读 · 0 评论 -
计网常见面试知识(一)
常见面试题TCP三次握手、四次挥手1.三次握手2.四次挥手为什么会有TIME_WAIT状态确保有足够的时间让对方收到ACK包避免新旧连接混淆为什么需要四次握手才能断开连接因为全双工,发送方和接收方都需要FIN报文和ACK报文服务器出现大量CLOSE_WAIT状态的原因对方关闭socket连接,我方忙于读或写,没有及时关闭连接检查代码,特别是释放资源的代码检查配置,特别是处理请求的线程配置3.TCP与UDP的区别面向连接vs无连接可靠性vs不可靠性有序性vs无原创 2020-12-04 21:29:09 · 239 阅读 · 0 评论