首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > 编程 >

effective java 第21条:用函数对象示意策略

2012-08-21 
effective java 第21条:用函数对象表示策略public class Host {private static class StrLenCmp implement

effective java 第21条:用函数对象表示策略

public class Host {        private static class StrLenCmp implements Comparator<String>,Serializable {        private static final long serialVersionUID = -2947076330971319599L;        @Override        public int compare(String o1, String o2) {            return o1.length() - o2.length();        }    }        public static final Comparator<String> STRING_LENGTH_COMPARATOR = new StrLenCmp();}
?

简而言之,函数指针的主要用途就是实现策略(Strategy)模式。为了在Java中实现这种模式,要声明一个接口来表示该策略,并且为每个具体策略声明一个实现了该接口的类。当一个具体策略只被使用一次时,通常使用匿名类来声明和实例化这个具体策略类。当一个具体策略是设计用来重复使用的时候,它的类通常就要被实现为私有的静态成员类,并通过公有静态final域被导出,其类型为该策略接口

?

热点排行