virtualしたがって、修飾子と一緒に修飾子を使用することはできないようoverrideです。
virtual- オーバーライド可能なメソッド
override- 親のクラスで同じ名前のメソッドをオーバーライドしているメソッド
これにより、子クラスのメソッドをオーバーライドすると、その子に子がある場合、そのメソッドを再度オーバーライドすることはできないと思います。
そして、メソッド宣言に and を入れるoverrideと、C# でコンパイル エラーが発生すると言っても過言ではありません。virtual
ただし、以下で作成したコードがなぜそのように機能するのか理解できません
using System;
public class DrawingObject
{
public virtual void Draw()
{
    Console.WriteLine("Drawing Object");
}
}
public class DrawDemo
{
     public static int Main()
     {
          DrawingObject[] dObj = new DrawingObject[3];
          dObj[0] = new DrawingObject();
           dObj[1] = new Line();
           dObj[2] = new LittleLine();
           foreach (DrawingObject drawObj in dObj)
           {
                drawObj.Draw();
           }
            Console.Read();
           return 0;
       }
  }
 public class Line : DrawingObject
 {
       public override void Draw()
       {// the method above me is in fact virtual because LittleLine overid it?
               Console.WriteLine("I'm a Line.");
       }
  }
  public class LittleLine : Line
  {
       public override void Draw()
       {
              Console.WriteLine("I'm a Little Line.");
         }
    }
出力は次のとおりです。
描画オブジェクト
私はラインです。
私はリトルラインです。
したがって、 の draw メソッドは、Lineによってオーバーライドされたように見えますLittleLine。このコードは実際にはオーバーライドしていませんか、それともコンパイラが他のトリックを行っていますか? virtualまたは、 andのコンテキストを理解していませんoverrideか?