Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • Home
  • SEARCH
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 3330856
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: May 17, 20262026-05-17T23:31:45+00:00 2026-05-17T23:31:45+00:00

Is it good to have a constructor in abstract class? is it a good

  • 0

Is it good to have a constructor in abstract class?

is it a good programming practice to create constructor of abstract class? since abstract classes can not be initialized, their child classes are initialized.

Following is my class structure.

public abstract class Scheduler
{
    private Storyboard timer;

    protected Scheduler()
    {
        // initialize the timer here.
        timer = new Storyboard();

        this.PollInterval = 60;
    }
}


public class TaskScheduler : Scheduler
{
    public TaskScheduler()
        : base()
    {

    }
}
  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. Editorial Team
    Editorial Team
    2026-05-17T23:31:45+00:00Added an answer on May 17, 2026 at 11:31 pm

    Yes, it’s absolutely fine. Just because the constructor can only be called by derived classes doesn’t mean it won’t be useful. For example, you might have an abstract class which represents a named entity of some kind – it would make sense to take the name as a constructor parameter.

    It would probably be worth making the constructor protected, to make it even more obvious that you can’t just call it from elsewhere.

    Note that there being a constructor (or multiple constructors) in an abstract class does force derived class constructors to go through it, but it doesn’t force the derived classes to have the same constructor signatures. For example:

    public abstract class NamedFoo
    {
        private readonly string name;
        public string Name { get { return name; } }
    
        protected NamedFoo(string name)
        {
            this.name = name;
        }
    }
    
    public class DerivedFooWithConstantName
    {
        public DerivedFooWithConstantName() : base("constant name")
        {
        }
    }
    

    In this case the derived class constructor is “removing” a parameter (by providing a constant value as the argument to the abstract class constructor) but in other cases it could “add” parameters that it required, or have a mixture.

    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Related Questions

Is it good practice to have a class constructor that uses default parameters, or
If I have an abstract class and derived classes of that class, am I
I have a class which has not default constructor. And I need a way
I have good knowledge on C++ (not C) and recently bought a Symbian-based phone.
Can anybody have good answer when should be database driven development be used and
I have an abstract class: type TInterfaceMethod = class abstract public destructor Destroy; virtual;
I have an abstract base class and I want to declare a field or
I have a class that represents a pretty complex object. The objects can be
Anybody have good examples of usability disasters? Here's an example. Hector is a manager
I have good knowledge on the working of a traditional .dll . Also the

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.