我有一个weapon
类,projectile
类和ballistic weapon
继承自的类weapon
,ballistic projectile
类继承自projectile
并且 weapon
类具有获取和设置武器的射弹的射弹属性。
弹道武器继承了这一点,但是弹道武器不会有任何武器,它有弹道弹道(不同于说激光弹道,因为它是即时冲击,所以没有弹道速度)
因此,如果我选择覆盖武器的属性,设置器可能会导致问题,因为
public Projectile weaponprojectile
{
// getter/setter
}
只需要一个通用的 Projectile。吸气剂覆盖可以正常工作,因为返回弹道弹丸仍然返回基础弹丸,它具有弹丸所做的所有事情,然后是一些。然而,二传手不会绝对没问题。不仅仅是任何弹丸都可以设置为弹道弹丸。
因此,如果我使用覆盖是确认弹道和静态转换类型的正确方法,还是应该尝试其他方法?
如果我不使用替代而是制作一个新的二传手,我担心我最终会得到这种具有 2 个几乎相同属性的武器,
它的弹丸和弹道弹丸基本上是弹丸加上其他一些东西,而真正拥有弹道弹丸毫无意义。
我是使用继承的新手,所以如果你有一个带有泛型变量的抽象类并且你继承了该类和变量并拥有更具体的变量类型,那么如果有人可以基本上指导我做什么。