摘要: 设计模式 创建型 结构型 行为型 算法 算法笔记 Java Java源码 java.io java.lang java.util java.util.concurrent Java基础 《Effective Java通俗理解(上)》 《Effective Java通俗理解(下)》 JVM Java开阅读全文
posted @ 2016-10-19 00:27 OKevin 阅读(305) 评论(0) 编辑
摘要: jdk1.8.0_41 一知半解写代码, 集合排序用个啥。 抄起键盘胡乱打, 似懂非懂最可怕。 Comparable与Comparator都是用于集合的排序,对于大多数人来说Comparator可能略微比Comparable要熟悉一点,类似下面这几句代码的使用频率应该是最高的。 这是一段对集合排序的阅读全文
posted @ 2018-02-22 23:58 OKevin 阅读(11) 评论(0) 编辑
摘要: JDK8已经发布快4年的时间了,现在来谈它的新特性显得略微的有点“不合时宜”。尽管JDK8已不再“新”,但它的重要特性之一——Lambda表达式依然是不被大部分开发者所熟练运用,甚至不被开发者所熟知。 国内的开发环境大家都知道,有各种的老项目,有各种各样的发布风险,让公司以及项目组对新的技术往往望而阅读全文
posted @ 2018-02-18 00:20 OKevin 阅读(414) 评论(3) 编辑
摘要: jdk1.8.0_144 Object类作为Java中的顶级类,位于java.lang包中。所有的类直接或者间接都继承自它。所以Object类中的方法在所有类中都可以直接调用。在深入介绍它的API时,先插一句它和泛型之间的关系。 在JDK1.5之前是没有泛型的,集合能够装下任意的类型,这就导致了一个阅读全文
posted @ 2018-02-13 01:55 OKevin 阅读(1629) 评论(3) 编辑
摘要: 在上篇《Java IO(2)阻塞式输入输出(BIO)》的末尾谈到了什么是阻塞式输入输出,通过Socket编程对其有了大致了解。现在再重新回顾梳理一下,对于只有一个“客户端”和一个“服务器端”来讲,服务器端需要阻塞式接收客户端的请求,这里的阻塞式表示服务器端的应用代码会被挂起直到客户端有请求过来,在高阅读全文
posted @ 2017-12-24 01:16 OKevin 阅读(271) 评论(0) 编辑
摘要: 在上文中《Java IO(1)基础知识——字节与字符》了解到了什么是字节和字符,主要是为了对Java IO中有关字节流和字符流有一个更好的了解。 本文所述的输出输出指的是Java中传统的IO,也就是阻塞式输入输出(Blocking I/O, BIO),在JDK1.4之后出现了新的输入输出API——N阅读全文
posted @ 2017-12-06 23:56 OKevin 阅读(302) 评论(0) 编辑
摘要: 在Web开发过程中离不开数据的交互,这就需要规定交互数据的相关格式,以便数据在客户端与服务器之间进行传递。数据的格式通常有2种:1、xml;2、JSON。通常来说都是使用JSON来传递数据。本文正是介绍在Java中JSON与对象之间互相转换时遇到的几个问题以及相关的建议。 首先明确对于JSON有两个阅读全文
posted @ 2017-12-03 22:10 OKevin 阅读(1375) 评论(2) 编辑
摘要: 正所谓怕什么来什么,这是知名的“墨菲定律”。Java基础涵盖各个方面,敢说Java基础扎实的人不是刚毕业的学生,就是工作N年的程序员。工作N年的程序员甚至也不敢人人都说Java基础扎实,甚至精通,往往只是“无他唯熟尔”——熟手而已。 IO这块我确实怕,它不难,只有两个方面:输入/输出。但你说它用得多阅读全文
posted @ 2017-11-25 21:26 OKevin 阅读(421) 评论(0) 编辑
摘要: spring-aop-4.3.7.RELEASE 在《Spring AOP高级——源码实现(1)动态代理技术》中介绍了两种动态代理技术,当然在Spring AOP中代理对象的生成也是运用的这两种技术。本文将介绍Spring AOP如何通过JDK动态代理的方式创建代理对象。 JDK动态代理以及CGLI阅读全文
posted @ 2017-11-23 23:52 OKevin 阅读(570) 评论(0) 编辑
摘要: 本文例子完整源码地址:https://github.com/yu-linfeng/BlogRepositories/tree/master/repositories/Spring%20AOP%E9%AB%98%E7%BA%A7%E2%80%94%E2%80%94%E6%BA%90%E7%A0%81%阅读全文
posted @ 2017-11-15 21:51 OKevin 阅读(383) 评论(0) 编辑
摘要: jdk1.8.0_144 在正式进入Spring AOP的源码实现前,我们需要准备一定的基础也就是面向切面编程的核心——动态代理。 动态代理实际上也是一种结构型的设计模式,JDK中已经为我们准备好了这种设计模式,不过这种JDK为我们提供的动态代理有2个缺点: 鉴于以上2个缺点,于是就出现了第二种动态阅读全文
posted @ 2017-11-09 23:12 OKevin 阅读(887) 评论(1) 编辑