1.一般地
cast这个object为你的实现类所继承的接口就可以了 
所以没必要cast成实现类本身2.如果非要cast成实现类本身,那么用swtich或者if else进行判断控制
当然这样的话,你增加了一个实现类就得修改你的工厂代码,不是最高级的 因此,建议首先优化你的结构设计,如果必须cast成实现类,那么采用2种的方法就可以了