RifleSoldier rifleSoldier1=(RifleSoldier)barrack.traing(EnumObjectType.rifleSoldier);该怎样定义traing函数的返回值才行啊
按照你这个赋值语句,应该是返回RifleSoldier类的对象,或者RifleSoldier类的子类都可以。
返回类型是RifleSoldier 的父类型。通过返回父类型,强转为RifleSoldier 类型,得到上述代码结果。