Can I extend a class which has only a parametrized constructor in Java?
You can but you need to explicitly call the base class parameterized constructor. You need to write like this: public class SubClass extends BaseClass{ public SubClass(){ super(null); } } Even when you are writing a sub class parameterized constructor, you need to explicitly refer to base class parameterized constrctor something like this: public SubClass extends SuperClass{ public SubClass(String name){ super(name); } } This is because, the java compiler tries to place the code in your costructor which will call base class’s Default constructor, as we don’t have the base class default constructor, we get the compilation error.