02 2019 档案

摘要:Java 学习路线 Java 后台需要看的书籍 比较好的面经 "Java后台面试总结 内含春招实习与秋招面经" "【这可能不只是一篇面经】 " 面经汇总 Java 【java】招银网络科技java面经:https://www.nowcoder.com/discuss/139236 【Java】招银网 阅读全文
posted @ 2019-02-27 10:41 Draymonder 阅读(368) 评论(0) 推荐(0)
摘要:n1 为 num1的 len n2 为 num2的 len 故中间的数应该是 k = (n1 + n2 + 1) / 2 二分 num1中位置 m1 , 故 num2的位置为m2 必须保证 nums1[m1 1] = nums2[m2 1] 阅读全文
posted @ 2019-02-26 20:37 Draymonder 阅读(95) 评论(0) 推荐(0)
摘要:ThreadLocal笔记 如上图所示 每个Thread 都有一个map,里面存着Entry,而 是实现了 的`ThreadLocal WeakReference WeakReference null`时,key就会被 gc 回收. 但是由于 还在 中,因此导致了内存泄漏 解决方法 hreadLoc 阅读全文
posted @ 2019-02-25 21:16 Draymonder 阅读(365) 评论(0) 推荐(0)
摘要:有return的情况下try catch finally的执行顺序 1. 在遇到Exception 并且没有catch的情况下 语句块没有执行 2. ,终止了 Java 虚拟机的运行, 语句块没有执行 理解一下finally The finally Block The finally block a 阅读全文
posted @ 2019-02-25 17:15 Draymonder 阅读(875) 评论(0) 推荐(0)
摘要:类加载的三个阶段 1. 加载(Loading): 查找并加载类的二进制数据 2. 链接(Linking): 验证(Verifying):确保被加载类的正确性(防止恶意文件被JVM加载 准备(Preparing):为类的静态变量分配内存,并将其初始化为默认值 解析(Resolving):把类中的符号引 阅读全文
posted @ 2019-02-21 14:37 Draymonder 阅读(369) 评论(0) 推荐(0)
摘要:饿汉式(推荐) 优点:初试化静态的instance创建一次。如果我们在Singleton类里面写一个静态的方法不需要创建实例,它仍然会早早的创建一次实例。而降低内存的使用率。 缺点:没有lazy loading的效果,从而降低内存的使用率。 单线程下 注解: Singleton的静态属性instan 阅读全文
posted @ 2019-02-16 12:40 Draymonder 阅读(299) 评论(0) 推荐(0)
摘要:Lock接口 Lock实现类 测试 测试结果 阅读全文
posted @ 2019-02-15 00:25 Draymonder 阅读(1445) 评论(0) 推荐(0)
摘要:同步代码块 SynchronizedTest类,用来表示取票功能 Ticket 模拟游乐园放票 同步方法时,其实是同步的this对象 下面可以证明 同步静态方法时,其实是同步的class 死锁小案例 Service1 两个方法. m1和m2 Service2 两个方法, s1和s2 死锁尝试 jst 阅读全文
posted @ 2019-02-14 21:18 Draymonder 阅读(604) 评论(0) 推荐(0)
摘要:"Arraylist 与 LinkedList 异同" "补充:数据结构基础之双向链表" "ArrayList 与 Vector 区别" "HashMap的底层实现" "JDK1.8之前" "JDK1.8之后" "HashMap 和 Hashtable 的区别" "HashMap 的长度为什么是2的 阅读全文
posted @ 2019-02-11 16:14 Draymonder 阅读(890) 评论(0) 推荐(0)
摘要:1. 冒泡排序 2. 快速排序 4. 希尔排序 5. 选择排序 7. 归并排序 参考文章 "数据结构解析" 阅读全文
posted @ 2019-02-11 12:21 Draymonder 阅读(195) 评论(0) 推荐(0)
摘要:和 方法 阅读源码的话,我们就会发现 ArrayList 中大量调用了这两个方法。比如:我们上面讲的扩容操作以及 、`toArray()` 等方法中都用到了该方法! 方法 我们写一个简单的方法测试以下: 结果: 方法 个人觉得使用 方法主要是为了给原有数组扩容,测试代码如下: 结果: 两者联系和区别 阅读全文
posted @ 2019-02-08 15:14 Draymonder 阅读(1108) 评论(0) 推荐(0)
摘要:"ArrayList简介" "ArrayList核心源码" "ArrayList源码分析" "System.arraycopy\(\)和Arrays.copyOf\(\)方法" "两者联系与区别" "ArrayList核心扩容技术" "内部类" "ArrayList经典Demo" ArrayList 阅读全文
posted @ 2019-02-08 14:55 Draymonder 阅读(177) 评论(0) 推荐(0)
摘要:HashMap 介绍 HashMap 是一个散列表,它存储的内容是键值对(key value)映射。 HashMap 继承于AbstractMap,实现了Map、Cloneable、java.io.Serializable接口。 HashMap 的实现不是同步的,这意味着它不是线程安全的。它的key 阅读全文
posted @ 2019-02-08 12:16 Draymonder 阅读(378) 评论(0) 推荐(1)
摘要:"Arraylist 与 LinkedList 异同" "补充:数据结构基础之双向链表" "ArrayList 与 Vector 区别" "HashMap的底层实现" "JDK1.8之前" "JDK1.8之后" "HashMap 和 Hashtable 的区别" "HashMap 的长度为什么是2的 阅读全文
posted @ 2019-02-07 21:09 Draymonder 阅读(984) 评论(0) 推荐(0)
摘要:static 关键字 static 关键字主要有以下四种使用场景 1. 修饰成员变量和成员方法 2. 静态代码块 3. 修饰类(只能修饰内部类) 4. 静态导包(用来导入类中的静态资源,1.5之后的新特性) 修饰成员变量和成员方法(常用) 被 static 修饰的成员属于类,不属于单个这个类的某个对 阅读全文
posted @ 2019-02-07 20:30 Draymonder 阅读(250) 评论(0) 推荐(0)
摘要:final 关键字 final关键字主要用在三个地方:变量、方法、类。 1. 对于一个final变量,如果是基本数据类型的变量,则其数值一旦在初始化之后便不能更改;如果是引用类型的变量,则在对其初始化之后便不能再让其指向另一个对象。 2. 当用final修饰一个类时,表明这个类不能被继承。final 阅读全文
posted @ 2019-02-07 20:27 Draymonder 阅读(162) 评论(0) 推荐(0)
摘要:"Servlet总结" "阐述Servlet和CGI的区别?" "CGI的不足之处:" "Servlet的优点:" "Servlet接口中有哪些方法及Servlet生命周期探秘" "get和post请求的区别" "什么情况下调用doGet\(\)和doPost\(\)" "转发(Forward)和重 阅读全文
posted @ 2019-02-07 20:01 Draymonder 阅读(193) 评论(0) 推荐(0)
摘要:"1. 面向对象和面向过程的区别" "面向过程" "面向对象" "2. Java 语言有哪些特点" "3. 关于 JVM JDK 和 JRE 最详细通俗的解答" "JVM" "JDK 和 JRE" "4. Oracle JDK 和 OpenJDK 的对比" "5. Java和C++的区别" "6. 阅读全文
posted @ 2019-02-07 19:54 Draymonder 阅读(221) 评论(0) 推荐(0)