public abstract class A { //抽象属性不能有实现代码 public abstract string AbstractProperty { get; set; } string s; //虚拟属性可以有实现代码 public virtual string VritualProperty { get { return this.s; } set { this.s = value.ToUpper(); } } } public class B : A { string message; //在继承类(子类)中必须提供抽象属性的实现 public override string AbstractProperty { get { return message; } set { this.message = value; } } //重写属性可以调用基类中的实现 public override string VritualProperty { get { return base.VritualProperty; } set { base.VritualProperty = value; } } }
本文深入探讨了C#中的抽象类、属性的抽象与虚拟特性,以及如何在子类中进行属性的重写。通过具体示例展示了如何在继承类中提供抽象属性的实现,并利用虚拟属性调用基类的实现,从而实现代码的复用和灵活性。重点阐述了抽象类、属性的抽象与虚拟特性在实际编程中的应用价值。
453

被折叠的 条评论
为什么被折叠?



