设计模式之工厂模式学习笔记

工厂模式隐藏了对象创建的过程,用户不需要了解创建的逻辑,直接调用工厂方法获取对象,对于同一类对象具有较好的扩展性,但是只能局限于同一类对象,不同种类的对象无法实现
工厂模式的创建过程如下:
1.定义接口

package factory;

public interface TV {
    public void off();
    public void open();
}

2.定义子类实现该接口

package factory;

public class HaiErTv implements TV{
    public void off(){
        System.out.println("haier off");
    }
    public void open(){
        System.out.println("haier open");
    }
}

package factory;

public class ChangHongTv implements TV {

    @Override
    public void off() {
        System.out.println("haier off");

    }
    @Override
    public void open() {
        System.out.println("haier open");

    }

}

3.定义工厂接口

package factory;

public interface TVFactory {
    public TV create();
}

4.定义工厂类,实现工厂接口,在工厂类中返回一个对象

package factory;

public class HaiErFactory implements TVFactory {

    @Override
    public TV create() {
        return new HaiErTv();
    }

}


package factory;

public class ChangHongFactory implements TVFactory {

    @Override
    public TV create() {
        return new ChangHongTv();
    }

}

5.使用

package factory;

public class Test {

    public static void main(String[] args) {
        //获取一个工厂
        TVFactory tvfFactory = new HaiErFactory();
        //调用工厂的方法创建对象
        TV tv =tvfFactory.create();
        tv.open();
    }

}

新手上路,理解错误的地方请指正,谢谢

猜你喜欢

转载自blog.csdn.net/qq_32131937/article/details/70233268
今日推荐