摘要: 使用原生态类型会在运行时导致异常,因此不要在新代码中使用。原生态类型只是为了与引入泛型之前的遗留代码进行兼容和互用而提供的。让我们做个快速的回顾:Set是个参数化类型,表示可以包含任何对象类型的一个集合;Set则是一个通配符类型,表示只能包含某种未知对象类型的一个集合;Set则是个原生态类型,它脱离了泛型系统。前两种是安全的,最后一种不安全。 阅读全文
posted @ 2014-02-13 10:20 harry881100 阅读(310) 评论(0) 推荐(0)
摘要: 四种嵌套类:1、静态成员类2、非静态成员类3、匿名类4、局部类如果一个嵌套类需要在单个方法之外仍可见,或者太长,不适合放在方法内部,就应该使用成员类。如果成员类的每个实例都需要一个指向其外围实例的引用,就要把成员类做成非静态的;否则,做成静态的。假设这个嵌套类属于一个方法的内部,如果你需要在一个地方创建实例,并且已经有一个置顶的类型可以说明这个类的特征,就要把它做成匿名类;否则,做成局部类。 阅读全文
posted @ 2014-02-13 09:17 harry881100 阅读(318) 评论(0) 推荐(0)
摘要: 第21条:用函数对象表示策略函数指针的主要用途就是实现策略模式。为了在Java中实现种子模式,要声明一个接口来表示该策略,并且为每个具体策略声明一个实现了该接口的类。当一个具体的策略只被使用一次时,通常使用匿名内部类来声明和实例化这个具体策略类。当一个具体策略是设计用来重复使用的时候,它的类通常要被实现为私有的静态成员,并通过共有的静态final域被导出,其类型为该策略接口。例1:Arrays.sort(StringArray,new Comparator(){ public int compare(String s1, String s2) { return s1.length() - s. 阅读全文
posted @ 2014-02-11 16:29 harry881100 阅读(572) 评论(0) 推荐(0)
摘要: 在博文中http://www.cnblogs.com/cysolo/p/3539210.html看到不借助第三个变量实现变量互换。代码如下: 1 import java.util.Scanner; 2 3 public class VariableExchange { 4 public static void main(String[] args){ 5 System.out.println("请输入变量A的值"); 6 Scanner scanner=new Scanner(System.in); 7 long A=scanner.n... 阅读全文
posted @ 2014-02-08 10:00 harry881100 阅读(500) 评论(0) 推荐(0)