public abstract class A
{         
    protected int a;         
    public abstract void DoWork();     
}  
public class B : A     
{         
    public B()        
    {             
        this.a = 0;        
    }          
    public B(int num)         
    {             
        this.a = num;         
    }          
    public override void DoWork()         
    {             
        Console.WriteLine(this.a);         
    }     
}      
class Program     
{         
    static void Main(string[] args)         
    {             
        A a = new B();              
        a.DoWork();              
        B b = new B(3);              
        b.DoWork();         
    }     
}
以上程序的运行结果是_____________________。(可能有多行)