繁体   English   中英

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

[英]How can I call parameterized constructor of default type from a parameterized constructor of type public which is in another class?

B类是从A类继承的。

A类具有参数类型的构造函数,该构造函数的访问类型为default,该类型无法访问(默认值:可以从其他类访问,但可以从同一包访问)。

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

在这里,我想通过调用super(999,"super");public B(int id1,int h1)访问A(int id1,String s) 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");

        }

如果B extends AA只有一个默认的构造函数的可见性,而B是不是在同一个包A ,则是绝对100%没有办法让B编译的。 A的构造函数都不对B可见,这是绝对必要的。

(当您需要一个需要子类但又不想在包外被子类化的类时,可以故意使用此方法。)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM