C# Abstract class clarification
<p>As abstract class can not be initialized,why the constructors are allowed?</p>

<p>I thought ,Incase i need to pass information to base class (abstract class in this class),i need to have constructor. I .. mean</p>

<pre><code>     abstract class Person    
     {
        string regNo,name;

        public Person(string regNo,string name)
        {
            this.regNo = regNo;
            this.name = name;
        }

        public string RegNo
        {
            get { return regNo; }
        }

        public string Name
        {
            get { return name; }
        }

    }

    class student : Person
    {
        student(string regno, string name)
            : base(regno, name)
        {
        }
    }
</code></pre>

<p>is this the purpose the constructor is allowed inside abstract class?</p>
