forum

Home / DeveloperSection / Forums / Prevent access of default constructor of base class in C#

Prevent access of default constructor of base class in C#

Anonymous User 2424 26-Mar-2014

I have a base class and a derived class. As both the classes are serializable, it require to have default constructor. But I want to prevent access of default constructor of base class because it may cause a problem if someone will create object with default constructor. I cannot make it as private or internal as it is base class. Making it private shows error in derived class. The error is base does not have any parameter less constructor. How can I prevent access of default constructor of base class? Below is the sample code.

[Serializable]
public class Test1()
{
    public Test1()
   {
    }
    public Test1(int i, int j)
    {
    }
    public Test1(int i, int j, int k)
    {
    }
 }
[Serializable]
public class Test2():Test1
{
    public Test2():base()
    {
    }
    public Test2(int i, int j):base(i,j)
    {
    }
    public Test2(int i, int j, int k):base(i,j,k)
    {
    }
}

c# c# 
Updated on 03-Apr-2019
I am a content writter !

Can you answer this question?


Answer

3 Answers

Liked By