小编Dag*_*ann的帖子

每个实现都有唯一的静态接口属性吗?

在我的代码中有一个接口damagable

public interface Damagable
{
    public static float maxHealth { get; set; }
    public float currentHealth { get; set; }
}
Run Code Online (Sandbox Code Playgroud)

不同的类实现damagable,其中currentHelath每个实例都是唯一的。这个想法是,给定类型的不同实例都将共享相同的内容maxHealth,以处理诸如基于 的再生和损坏之类的事情maxHealth

这里的关键字能static解决问题吗?

我可以maxHealth在每个类的构造函数中进行设置,但我希望有一种方法可以使其每个类都是静态的。

有没有办法让接口属性在实现它的每个类上都不同,而该类的每个实例都具有相同的值,或者是否有更好的方法来做到这一点?

最终我将有多个类,例如:

public class LargeObstacle : Damagable
{
    public float maxHealth { get; set; } = 100;
    public float currentHealth { get; set; }
}
public class SmallObstacle : Damagable
{
    public float maxHealth { get; set; } = 40;
    public …
Run Code Online (Sandbox Code Playgroud)

c#

3
推荐指数
1
解决办法
91
查看次数

标签 统计

c# ×1