Default Access Specifier of constructor in Inheritance : I did a little web search and came to know that default constructor's access specifier is same as the access level of class, but take a look here

her's one class

   

     package package2;
    `public class TestClass1 {
    	TestClass1()
    	{
    		System.out.println("In parent's contructor");
    	}
    }

and here another which inherits the previous one

    package package2;
    
    public class TestClass2 extends TestClass1 {
    	 
    	  TestClass2()
    	 {
    		 System.out.println("In TestClass2's contructor");
    	 }
    
    }

`

but when i try to create the object of `TestClass2`

    import package2.*;
    
     class MainClass {
    	
    	 
    	public static void main(String[] args) 
    	{
    		TestClass2 t2 = new TestClass2(); //Says the constructor TestClass2() is not visible.
    		
    	}
     }

I don't understand both classes `TestClass1` and `TestClass2` have public access so their constructors must also be implicitly public, Which concept  am I missing here ? o.O




