C# 如何允许接口具有 getters/setters 的成员变量?

How can C# allow interface's to have member variables with getters/setters?

-从我记事起,我就一直认为 Java 和 C# 中的接口只允许接口中的以下内容 --常量 --方法签名

1) C#如何允许接口的成员变量带有getters/setters?

public interface IEntityBase
{
    ObjectId _id { get; set; }
}

2) Java 是否允许类似于上述 C# 代码的内容?

A 属性 不是成员变量。将其视为使用 GetVarA() 和 SetVarA(int varA) 方法公开私有变量的旧技术的替代品。

属性 的真正意义在于语法更简洁。这就是为什么它可以存在于接口中的原因,因为从技术上讲它根本没有定义变量 - 你的字符串 MyName {get;} 的实现可以有一个私有的 'myName' 成员变量来支持它,而其他人可以获取这个名字每次调用 属性 的 Get 时从数据库中获取。