JDK5.0中新特性介绍:泛型(Generics);增强的“for”循环(EnhancedForloop);自动装箱/自动拆箱(Autoboxing/unboxing);类型安全的枚举(Typesafeenums);静态导入(Staticimport);可变参数(Varargs);增强的for循环:For-Each循环的加入简化了集合的遍历其语法如下..
分类:
编程语言 时间:
2015-11-15 19:21:43
阅读次数:
191
可变参数(Varargs)可变参数使程序员可以声明一个接受可变数目参数的方法。注意,可变参数必须是方法声明的最后一个参数。可变参数本质上就是一个数组,对于某个声明了可变参数来说,我们既可以传递离散的值,也可以传递数组对象。但如果我们将方法中的参数定义为数组,那么只..
分类:
编程语言 时间:
2015-11-15 19:19:42
阅读次数:
166
泛型:所谓泛型,就是变量的类型参数化。作用:限制泛型可用类型。在定义泛型类别时,预设可以使用任何的类型来实例化泛型类型中的类型,但是如果想要限制使用泛型类别时,只能用某个特定类型或者是其子类型才能实例化该类型时,可以在定义类型时,使用extends关键字指定这个类..
分类:
编程语言 时间:
2015-11-14 23:35:10
阅读次数:
444
简单的泛型定义使用:publicclassGenericFoo<T>{
privateTfoo;
publicvoidsetFoo(Tfoo){
this.foo=foo;
}
publicTgetFoo(){
returnthis.foo;
}
publicstaticvoidmain(String[]args){
//GenericFooisarawtype,ReferencestogenerictypeGenericFoo<T>shouldbeparam..
分类:
编程语言 时间:
2015-11-10 01:46:46
阅读次数:
163
HashSet不包含重复元素,由哈希表支持。下面我就开始剖析下HashSet的源代码:首先从构造方法开始;privatetransientHashMap<E,Object>map;
publicHashSet(){
map=newHashMap<E,Object>();
}
publicHashSet(Collection<?extendsE>c){
map=newHashMap<E,O..
分类:
编程语言 时间:
2015-11-09 11:03:02
阅读次数:
243
Comparable&Comparator都是用来实现集合中元素的比较、排序的,只是Comparable
是在集合内部定义的方法实现的排序,Comparator是在集合外部实现的排序,所以,如想实现排序,就需要在集合外定义Comparator
接口的方法或在集合内实现Comparable接口的方法。可以说一个是自已..
分类:
编程语言 时间:
2015-11-09 01:45:57
阅读次数:
196
策略模式(Strategy):策略模式中体现了两个非常基本的面向对象设计的原则:l封装变化的概念;l编程中使用接口,而不是对接口实现;面向接口的编程策略模式的定义:l定义一组算法,将每个算法都封装起来,并且使他们之间都可以互换;l策略模式使这些算法在客户端调用它们的时候..
分类:
编程语言 时间:
2015-11-09 00:13:45
阅读次数:
216
Collections类可以将存储与List中的元素进行排序,可以按照针对元素的排序方法进行排序,也可以按照指定的排序类进行排序。Collections类提供了两个静态的sort方法:sort(List<T>list)sort(List<T>list,Comparator<?superT>c)第一个方法是直接将List中的元素..
分类:
编程语言 时间:
2015-11-09 00:11:09
阅读次数:
258
publicinterfaceMap<K,V>将键映射到值的对象。一个映射不能包含重复的键;每个键最多只能映射到一个值。Map接口取代Dictionary类,后者完全是一个抽象类,而不是一个接口。Map接口提供三种collection视图,允许以键集、值集或键-值映射关系集的形式查看某个映射的内容。..
分类:
编程语言 时间:
2015-11-07 19:16:27
阅读次数:
194