public class AnimalFactory {
public Animal createAnimal(String type,String name,String color,int age){
Animal animal=null;
if(type.equals("猫")){
animal=new Cat(name,color,age);
}else if(type.equals("狗")){
animal=new Dog(name,color,age);
}else{
//animal=new Cat(name,color,age);
}
return animal;
}
}
测试
package cn.com.xin.www.DuoTai.Test;
import java.util.Scanner;
public class AnimalTest {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner sc=new Scanner(System.in);
System.out.println("输入动物的类别:");
String type=sc.next();
System.out.println("输入动物的名字:");
String name=sc.next();
System.out.println("输入动物的颜色:");
String color=sc.next();
System.out.println("输入动物的年龄:");
int age=sc.nextInt();
AnimalFactory af=new AnimalFactory();
Animal a=af.createAnimal(type, name, color, age);
a.eat();
}
}