例子如下:
public interface (abstract)Pet{
}
一般来说抽象类比较常用
public class Dog implements Pet{
}
public class Cat implements Pet{
}
public class Snake implements Pet{
}
...
和其他一些子类。
public class PetFactory {
private types [] { Dog.class, Cat.class, Snake.class};
private Random random = new Random(47)
//这个方法就是得到实体的对象
public Pet next(){
return (Pet)types[random.nextInt(Types.length)].newInstance();
}
}