随笔分类 - java基础
摘要:java.lang.Iterator & java.lang.Iterable Iterator和Iterable的区别和联系 iterator是具有迭代状态的对象。它允许你检查它是否有更多的元素使用hasNext()并移动到下一个元素(如果有)使用next()。 Iterable是可以迭代的一系列
阅读全文
摘要:java.lang.Collections 此类完全由在collection上进行操作或返回 collection 的静态方法组成。也就是说Collections提供了对Collection集合操作的一些方法。jdk类似这种的还有几个,例如:Array和Arrays,Object和Objects。
阅读全文
摘要:集合类和接口之间的关系图,能够比较清楚的展示各个类和接口之间的关系(其中:点框为接口(...) 短横线框为抽象类( ) 实线为类) 上图可以看到:集合可以分成两部分来学习。一个是以Collection为顶层接口,这种集合是单值元素<value>。一个是以Map为顶层接口,这种结合是<key,valu
阅读全文
摘要:final final域使得确保初始化安全性(initialization safety)成为可能,初始化安全性让不可变形对象不需要同步就能自由地被访问和共享 作用在类上 则为final类,final类不能被继承。一般用于工具类时,同时把工具类构造函数声明为私有,暴露静态共有方法 作用在成员变量上
阅读全文
摘要:最近做一个数据库分离的功能,其中用到了spring aop,主要思路就是在service层的方法执行前根据注解(当然也可以根据方法名称,如果方法名称写的比较统一的话)来判断具体使用哪个库。所以想着再回头来看看aop的详细用法。 因为spring aop的话原理涉及到动态代理,了解动态代理的可以查看我
阅读全文
摘要:spring的aop(Aspect Oriented Programming:面向切面编程)机制是基于动态代理实现的,那么动态代理是怎样的呢?为什么动态代理可以实现切面的效果呢? 其实在理解动态代理的时候,可以先去学习静态代理,也可以先去了解代理模式。静态代理理解了,那么动态代理就会比较好理解。这里
阅读全文