In MSDN, it's pointed out,

http://msdn.microsoft.com/en-us/library/9fkccyh4(VS.80).aspx

I'm confused exactly what does this item mean "An online inherited property could be overridden inside a derived class by together with a property declaration that utilizes the override modifier."?

(this is actually the second variations between virtual and abstract)

thanks ahead of time, George

The only real distinction between virtual and abstract, is the fact that an abstract method or propery doesn't have implementation within the class where it's been defined (the abstract class), which it must be overriden inside a subclass whereas an online method or property comes with an implementation within the class where it's been defined, so it isn't mandatory to override it inside a subclass.

public abstract AbstractClass
{
    // This class cannot be instantiated, since it is 
    // abstract, and the class is abstract because
    // it has an abstract member

    public abstract MyProperty {get; set; }
}

Inside a class in which you be a consequence of AbstractClass (the above mentioned AbstractClass is simply for explanation reasons because it doesn't have techniques / properies with an implementation, you can create an interface rather than an abstract class), you'll have to offer an implementation of MyProperty. Otherwise, it will not compile. You need to do this by 'overriding' the MyProperty, you won't want to introduce a brand new member, but simply offer an implementation for any property that's been defined formerly.

public class ConcreteClass : AbstractClass
{
    public override MyProperty {
       get
       {
            return _someValue;
       }
       set
       {
            if( _someValue != value ) _someValue = value;
       }
}