Factory Method - Caso II

Paso uno:

Interface definiciones DogFactory.java

package FactoryMethod;

public interface DogFactory {

    Dog createDog();
}

Paso dos:

clase de implementación de la fábrica define dos

muyangFactory.java

package FactoryMethod;

/**
 * @program: MyFactory
 * @ClassName muyangFactory
 * @description:
 * @author: hc
 * @create: 2020-03-19 21:46
 * @Version 1.0
 **/
class muyangFactory implements DogFactory {


    @Override
    public Dog createDog() {
        return new muyang();
    }
}

tianyuanFactory.java

package FactoryMethod;

/**
 * @program: MyFactory
 * @ClassName ConcreteAnimal
 * @description:
 * @author: hc
 * @create: 2020-03-19 00:33
 * @Version 1.0
 **/
class tianyuanFactory implements DogFactory {


    @Override
    public Dog createDog() {
        return new tianyuan();
    }
}

Paso tres:
la definición de la clase abstracta perro, diseñado para definir las propiedades
Dog.java

package FactoryMethod;

//狗狗接口
public abstract class Dog {

    //创建金毛的抽象方法
    public abstract void white();

    //创建柯基的抽象方法
    public abstract void yellow();

    //创建牧羊犬的抽象方法
    public abstract void black();
}

Paso cuatro:

La definición de los perros de pastor de pastoreo y propiedades

tianyuan.java

package FactoryMethod;

class tianyuan extends Dog {

    @Override
    public void white() {
        System.out.println("创建了一只白色的田园犬");
    }

    @Override
    public void yellow() {
        System.out.println("创建了一只黄色的田园犬");
    }

    @Override
    public void black() {
        System.out.println("创建了一只黑色的田园犬");
    }
}

muyang.java

package FactoryMethod;

/**
 * @program: MyFactory
 * @ClassName muyang
 * @description:
 * @author: hc
 * @create: 2020-03-19 21:46
 * @Version 1.0
 **/
class muyang extends Dog {

    @Override
    public void white() {
        System.out.println("创建了一只白色的牧羊犬");
    }

    @Override
    public void yellow() {
        System.out.println("创建了一只黄色的牧羊犬");
    }

    @Override
    public void black() {
        System.out.println("创建了一只黑色的牧羊犬");
    }
}
Publicado 37 artículos originales · ganado elogios 62 · Vistas a 10000 +

Supongo que te gusta

Origin blog.csdn.net/weixin_40032967/article/details/105099493
Recomendado
Clasificación