title: Overriding properties from abstract class in Salesforce Apex
body: <p>I have an abstract class in apex with several properties that I would like to override in a child class. According to the documentation, properties support both the override and virtual access modifiers. However, when I try to use either of them in either the parent or child class, I get an error saying that variables cannot be marked as virtual/override. Here is a facsimile of the code that causes this error:</p>
  
  <pre><code>public abstract class Row{
      public virtual double value{
          get{return value==null ? 0 : value;}
          set;
      }
  }
  
  public class SummaryRow extends Row{
      private list&lt;Row&gt; childRows;
      public override double value{
          get{
              totalValue = 0;
              for(Row childRow:childRows){
                  totalvalue += childRow.value;
              }
              return totalValue;
          }
      }
  }
  </code></pre>
  
  <p>Is this functionality not supported, or is there something that I am missing?</p>
  
  <p>Thanks in advance.</p>