今天复习面向对象的接口属性,猛地一看,发现一个不懂的地方。进来讨论讨论把?...

本文探讨了C#中接口的定义与实现细节,特别是接口属性的get与set访问性问题。通过具体代码示例展示了如何在实现接口时正确处理属性的可访问性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

接口的属性:
请看以下代码:
C# code
public interface IMyInterface { void DoSomething(); void DoSomethingelse(); int DoThis { get; } } public class MyClass : IMyInterface { #region IMyInterface 成员 public void DoSomething() { throw new NotImplementedException(); } void IMyInterface.DoSomethingelse() { throw new NotImplementedException(); } protected int x; public int DoThis { get { return x; } set { x = value; } } #endregion } class Program { static void Main(string[] args) { MyClass m = new MyClass(); m.DoThis = 1; Console.WriteLine(m.DoThis.ToString()); Console.ReadKey(); } }


那么我就疑惑了,如果按照常理,接口定义了get访问性,基类里不应该可以set。到底怎么回事呢?
接口里的属性定义的可访性,倒不如不为空。可是为空又提示必须要有其一。
那么想必有什么作用吧?

转载于:https://www.cnblogs.com/vseen/archive/2008/12/17/1357090.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值