接口
package FactoryExample;
public interface Human {
void eat();
void walk();
void show();
}
实现一
package FactoryExample;
public class Man implements Human {
@Override
public void eat() {
System.out.println("男人吃饭,吃完饭打炮!");
}
@Override
public void walk() {
System.out.println("男人走路,走完路打不了炮!");
}
@Override
public void show() {
if (this.equals(null)) {
System.out.println("空对象");
} else {
this.eat();
this.walk();
}
}
}
实现二
package FactoryExample;
public class Women implements Human {
@Override
public void eat() {
System.out.println("女人吃饭!吃完饭被干!");
}
@Override
public void walk() {
System.out.println("女人走路,和男人一样!");
}
@Override
public void show() {
if (this.equals(null)) {
System.out.println("空对象");
} else {
this.eat();
this.walk();
}
}
}
工厂
package FactoryExample;
public class Factory {
private Human human = null;
public Human getHuman() {
return human;
}
public void setHuman(String string) {
if (string.equals("man")) {
this.human = new Man();
} else if (string.equals("women")) {
this.human = new Women();
} else {
System.out.println("设置空对象!");
this.human = null;
}
}
}
调用
package FactoryExample;
public class Test {
public static void main(String[] args) {
Factory factory = new Factory();
factory.setHuman("man");
Human human = factory.getHuman();
human.show();
factory.setHuman("women");
human = factory.getHuman();
human.show();
}
}
没有了代码简单,如果看不懂,赶快考虑转行吧!新手倒是不必这样!