java 面试题
蒻鸡Kid
这个作者很懒,什么都没留下…
展开
-
java面经之网络
1.三次握手和四次挥手的过程?每次发送的包的内容,客户端和服务端的状态? 三次握手 1.客户端向服务器发送 syn =1 seq = x 发送完毕 客户端进入 syn_send状态 2.服务器接收到数据包 回复一个syn =1 ack=1 seq=y,acknum = x+1 发送完毕 服务端进入 syn_rcvd状态 3. 客户端收到以后回复一个 ack=1 acknum = y+1 发送完毕后客户端进入 established状态 ,当服务器接收到> > 这个包 也进入es原创 2020-09-26 16:22:26 · 183 阅读 · 1 评论 -
Java每日30面试题---2020年9月22日
HashMap 与 ConcurrentHashMap有什么区别 HashMap和ConcurrentHashMap 最大的区别就是 ConcurrentHashMap是一个线程安全的map 而hashmap不是线程安全的。 而且concurrentHashMap是一个读写分离的模式,每次扩容的时候都让线程去帮忙扩容,而hashmap 还是正常库容,hashmap的get是从table中拿的。 HashMap 插入元素的过程 当触发一个put(key,value)方法的时候,他会调用一个put..原创 2020-09-22 09:26:22 · 190 阅读 · 1 评论 -
Java每日30面试题--2020年9月18日
StringBuilder 和StringBuffer的区别 StringBuider和StringBuffer都是字符串变量,比较大的区别就是StringBuider是非线程安全的,StringBuff则是线程安全的 Object类里面的方法 wait() notify() notifyall() clone() equals() finalie() getClass() hashCode() toString() ==和equals的区别 == 比较的地址的引用 equals 如果没有重..原创 2020-09-18 21:02:05 · 228 阅读 · 0 评论 -
java面试题整理
基本类 Object类 wait() 和 notify的联系 wait()、notify/notifyAll() 方法是Object的本地final方法,无法被重写。 wait()使当前线程阻塞,前提是 必须先获得锁,一般配合synchronized 关键字使用, 由于 wait()、notify/notifyAll() 在synchronized 代码块执行,说明当前线程一定是获取了锁的。 ...原创 2020-03-01 22:07:36 · 171 阅读 · 0 评论 -
JAVA面试题之LinkedList ArrayList Vectory 的区别
首先 这三者都实现了java集合框架List 所谓的有序集合,因此具体功能比较相似,比如提供定位,添加,删除的操作。都提供迭代器遍历,但是因为具体的设计区别在行为,性能,线程安全等方向又有很大的不同。 Vector 是java早期提供线程安全的动态数组,如果不需要线程安全,不建议选择。同步有额外的开销,Vectory内部使用对象数组来保存数据的,可以根据需要自动增加容量,当数组已满会创建新的数组...原创 2020-02-28 22:30:03 · 260 阅读 · 0 评论 -
判断一个二叉树是否是镜像的 (牛客模拟面试最后一题)
例如 [1,2,2,3,4,4,3] 就是对称的 1、如果只有一个跟 那么肯定是对称的 返回True 2、如果一边有 一边没有了 那肯定不对称 发挥False 3、== 判断左子树的右子树 是否等于右子树的左子树== class Solution(): def isSymmetrical(self,pRoot): left = pRoot.left righ...原创 2020-02-05 17:37:10 · 220 阅读 · 0 评论 -
java 面试题
解释Runnable接口和Thread 的区别 Runnable接口和Thread类 都是创建线程的类 ,他们都需要实现run 方法。 java 不允许多继承,那么如果一个类继承了Thread类后,他就不能继承其他类了。而java是可以实现多个接口的,使用Runnable就不会出现这样的问题。 Thread类 提供了很多关于线程的方法 例如:或缺线程ID 线程名,线程状态等方法,对于比较复杂的线...原创 2020-02-05 13:38:17 · 108 阅读 · 0 评论