1,先写基类,那个纯虚的类
public abstract class Article {
public abstract void produce();
}
public abstract class Video {
public abstract void produce();
}
2,写虚拟工厂接口
public interface CourseFactory {
Video getVideo();
Article getArticle();
}
3,写具体的实现类
public class JavaArticle extends Article {
@Override
public void produce() {
System.out.println("编写Java课程手记");
}
}
public class JavaVideo extends Video {
@Override
public void produce() {
System.out.println("录制Java课程视频");
}
}
4,写虚拟工厂接口的实现类
public class JavaCourseFactory implements CourseFactory {
@Override
public Video getVideo() {
return new JavaVideo();
}
@Override
public Article getArticle() {
return new JavaArticle();
}
}
5,写最后的测试类
public class Test {
public static void main(String[] args) {
CourseFactory courseFactory = new JavaCourseFactory();
Video video = courseFactory.getVideo();
Article article = courseFactory.getArticle();
video.produce();
article.produce();
}
}
6,总结,勉强看懂,但是不晓得啥样的环境下,该使用这样的方法