Animal.java
package com.heima.factory;
public interface Animal {
public void eat();
}
Cat.java
package com.heima.factory;
public class Cat implements Animal {
public void eat() {
System.out.println("猫吃鱼");
}
}
Dog.java
package com.heima.factory;
public class Dog implements Animal {
public void eat() {
System.out.println("狗吃屎");
}
}
MyFactory.java
package com.heima.factory;
public class MyFactory {
public static Animal createAnimal(String kind){
if(kind.equalsIgnoreCase("cat")){
return new Cat();
}
else if(kind.equalsIgnoreCase("Dog")){
return new Dog();
}
return new Dog();
}
}
Test.java
package com.heima.factory;
public class Test {
/**
* @param args
*/
public static void main(String[] args) {
Cat cat=(Cat) MyFactory.createAnimal("cat");
cat.eat();
Dog dog=(Dog) MyFactory.createAnimal("dog");
dog.eat();
}
}