摘要: 所谓泛型:就是允许在定义类、接口指定类型形参,这个类型形参在将在声明变量、创建对象时确定(即传入实际的类型参数,也可称为类型实参) 泛型类或接口 “菱形”语法 //定义public interface List extends Collection public class HashMap extends AbstractMap implements Map, Cloneable, Seria... 阅读全文
posted @ 2015-03-22 09:39 Ydoing 阅读(352) 评论(0) 推荐(0) 编辑
摘要: 继承 继承描述了基类的属性如何“遗传”给派生类。一个子类可以继承它的基类的任何属性,不管是数据属性还是方法。创建子类的语法看起来与普通(新式)类没有区别,一个类名,后跟一个或多个需要从其中派生的父类: class SubClassName (ParentClass1[, ParentClass2, ...]): 'optional class documentation string' ... 阅读全文
posted @ 2015-03-18 20:27 Ydoing 阅读(209) 评论(0) 推荐(0) 编辑
摘要: 枚举类enum是JDK1.5引入的,之前都是用public static final int enum_value来代替枚举类的。枚举类enum是一种特殊的类,它默认继承了类java.lang.Enum。和其它普通类一样,enum同样可以有成员变量、方法、构造器,也可以实现一个或多个接口,区别是:- 如果有构造器,必须用private修饰。- 枚举类不能派生子类。- 枚举类所有的实例必须在第一行显... 阅读全文
posted @ 2015-03-18 20:07 Ydoing 阅读(330) 评论(0) 推荐(0) 编辑
摘要: 分析如下GC日志:[GC [PSYoungGen: 9216K->1024K(9216K)] 1246196K->1246220K(1287040K), 0.2398360 secs] [Times: user=0.29 sys=0.01, real=0.24 secs][Full GC [PSYoungGen: 1024K->0K(9216K)] [ParOldGen: 1245196K->12... 阅读全文
posted @ 2015-03-17 20:21 Ydoing 阅读(189) 评论(0) 推荐(0) 编辑
摘要: 什么是 python 式的生成器?从句法上讲,生成器是一个带 yield 语句的函数。一个函数或者子程序只返回一次,但一个生成器能暂停执行并返回一个中间的结果----那就是 yield 语句的功能,返回一个值给调用者并暂停执行。当生成器的 next()方法被调用的时候,它会准确地从离开地方继续(当它返回[一个值以及]控制给调用者时) 简单实例 def gen(): yield 1 ... 阅读全文
posted @ 2015-03-16 20:22 Ydoing 阅读(256) 评论(0) 推荐(0) 编辑
摘要: ThreadLocal类可以理解为ThreadLocalVariable(线程局部变量),提供了get与set等访问接口或方法,这些方法为每个使用该变量的线程都存有一份独立的副本,因此get总是返回当前执行线程在调用set时设置的最新值。可以将ThreadLocal视为 包含了Map对象,保存了特定于该线程的值。概括起来说,对于多线程资源共享的问题,同步机制采用了“以时间换空间”的方式,而Thre... 阅读全文
posted @ 2015-03-16 20:20 Ydoing 阅读(460) 评论(0) 推荐(0) 编辑
摘要: 创建类 Python 类使用 class 关键字来创建。简单的类的声明可以是关键字后紧跟类名: class ClassName(bases): 'class documentation string' #'类文档字符串' class_suite #类体实例化 通过类名后跟一对圆括号实例化一个类 mc = MyClass() # instantiate class 初始化类 'in... 阅读全文
posted @ 2015-03-16 20:10 Ydoing 阅读(336) 评论(0) 推荐(0) 编辑
摘要: 闭锁相当于一扇门,在闭锁到达结束状态之前,这扇门一直是关闭着的,没有任何线程可以通过,当到达结束状态时,这扇门才会打开并容许所有线程通过。它可以使一个或多个线程等待一组事件发生。闭锁状态包括一个计数器,初始化为一个正式,正数表示需要等待的事件数量。countDown方法递减计数器,表示一个事件已经发生,而await方法等待计数器到达0,表示等待的事件已经发生。CountDownLatch强调的是一... 阅读全文
posted @ 2015-03-14 21:37 Ydoing 阅读(1287) 评论(0) 推荐(0) 编辑
摘要: volatile提供了弱同步机制,用来确保将变量更新通知到其它线程。volatile变量不会被缓存在寄存器中或者对其它处理器不可见的地方,因此在读取volatile变量时总会返回最新写入的值。可以想象成如下语义,然而volatile是更轻量级的同步机制。volatile只能确保可见性,但不能保证原子性。也就是说不能在复合操作用volatile变量,比如i++。public synchronized... 阅读全文
posted @ 2015-03-14 21:31 Ydoing 阅读(202) 评论(0) 推荐(0) 编辑
摘要: 1.意图 将抽象部分与它的实现部分分离,使它们可以独立地变化. 2.适用性 你不希望在抽象和它的实现部分之间有一个固定的绑定关系。 类的抽象与它的实现都应该可以通过子类的方式加以扩展。 抽象部分与实现部分可以独立变化,而不会相互影响。 从多维度扩展应用程序。 3.结构 4.参与者 Abstraction: 定义抽象的接口;维护一个指向Implementor对象的引用。 Refined... 阅读全文
posted @ 2015-03-09 20:19 Ydoing 阅读(347) 评论(0) 推荐(0) 编辑