工厂方法在JDK中的运用

一 代码

JDK源码解析-Collection.iterator方法

public class Demo {
          
   
    public static void main(String[] args) {
          
   
        List<String> list = new ArrayList<>();
        list.add("令狐冲");
        list.add("风清扬");
        list.add("任我行");

        //获取迭代器对象
        Iterator<String> it = list.iterator();
        //使用迭代器遍历
        while(it.hasNext()) {
          
   
            String ele = it.next();
            System.out.println(ele);
        }
    }
}

该使用迭代器遍历集合,获取集合中的元素。而单列集合获取迭代器的方法就使用到了工厂方法模式。

二类图

    Collection接口是抽象工厂类,ArrayList是具体的工厂类。 Iterator接口是抽象商品类,ArrayList类中的Iter内部类是具体的商品类。 具体的工厂类中iterator()方法创建具体的商品类的对象。
另外 1 DateForamt类中的getInstance()方法使用的是工厂模式; 2 Calendar类中的getInstance()方法使用的是工厂模式;
经验分享 程序员 微信小程序 职场和发展