如何从另一个类中的public类型的参数化构造函数中调用默认类型的参数化构造函数?

时间:2017-01-05 03:05:35

标签: java inheritance default-constructor

B类继承自A类。

A类具有访问类型default的参数化构造函数,该构造函数不可访问(默认:它可以从不同的类访问,但可以从相同的包中访问。)

如何从另一个类访问我的默认可见性构造函数?

在这里,我想从A(int id1,String s)访问public B(int id1,int h1),通过调用super(999,"super");轰炸创建新构造函数的错误

编辑:A类和B类在同一个项目中

 public class A {

          A(int id1,String s)
        {
            System.out.println("in parameterized constructor of class A");

        }

    public class B  extends A{

        public B(int id1,int h1)
        {
            super(999,"super");//The constructor A(int, String) is undefined

            System.out.println("in parameterized constructor of class B");

        }

1 个答案:

答案 0 :(得分:3)

如果B extends AA只有默认的可见性构造函数,并且BA不在同一个包中,那么绝对有100%没办法make B编译。 A的{​​{1}}个构造函数都不会显示,这是绝对必要的。

(当你需要一个需要子类的类但你不希望它在包外面是可子类化的类时,你可以故意使用它。)