如何统一使用界面

时间:2019-02-25 18:20:48

标签: c# unity3d

我制作了一个看起来像这样的界面:

public interface Weapon
{
    void Shoot();
    float damage { get; set; }
}

我在另一个类中实现了它,对于损害字段,我有这样的东西:

   float Weapon.damage
    {
        get
        {
            return damage;
        }

        set
        {
            throw new NotImplementedException();
        }
    }

但是如何将吸气剂用于Weapon.damage?我尝试过这样的事情:Weapon.damage.get(),但是没有用

任何帮助将不胜感激,谢谢!

1 个答案:

答案 0 :(得分:5)

我同意代码学徒-您应该看看类和接口基础的其他示例。对于您的特定项目,您可以执行以下操作。我没有尝试编译它,但是它应该使您接近

public interface IWeapon
{
    void Shoot();
    float Damage { get; }
}

public class Sword : IWeapon
{
    public void Shoot() { } //does nothing
    private float _damage { get; set; }
    public float Damage { get { return _damage; } }
    public Sword(int damage)
    {
        _damage = damage;
    }
}