本文共 1598 字,大约阅读时间需要 5 分钟。
public interface Course { void study();}
public class JavaCourse implements Course { @Override public void study() { System.out.println("学习java课程"); }}
public class PythonCourse implements Course { @Override public void study() { System.out.println("学习Python课程"); }}
public class SparkCourse implements Course { @Override public void study() { System.out.println("学习Spark课程"); }}
public class Tom { private Course course; public Tom(Course course) { this.course = course; } public Tom() { } public void wantToStudy(Course course) { course.study(); } public void wantToStudy() { course.study(); } public void setCourse(Course course) { this.course = course; }}
public class Test { public static void main(String[] args) { System.out.println("----------- v1 -------------"); Tom tom = new Tom(); tom.wantToStudy(new JavaCourse()); tom.wantToStudy(new PythonCourse()); tom.wantToStudy(new SparkCourse()); System.out.println("----------- v2 ----------"); Tom tom1 = new Tom(new JavaCourse()); tom1.wantToStudy(); System.out.println("----------- v3 ----------"); Tom tom2 = new Tom(); tom2.setCourse(new JavaCourse()); tom2.wantToStudy(); tom2.setCourse(new PythonCourse()); tom2.wantToStudy(); }}
类图:
执行结果:转载地址:http://pzixi.baihongyu.com/