为了账号安全,请及时绑定邮箱和手机立即绑定

如何从另一个类构造函数调用变量(长度、宽度、高度)

如何从另一个类构造函数调用变量(长度、宽度、高度)

慕娘9325324 2021-12-22 20:33:19
如何从另一个类构造函数调用变量(长度、宽度、高度)试图从 A 类调用变量长度、宽度、高度不能这样做   class A {            int length;            int breadth;             int height;        A(int length,int height,int breadth)        {            this.length=length;            this.height=height;            this.breadth=breadth;        }       }    class B extends A    {                  public void display()        {            System.out.println("Length of the rect is "+length);            System.out.println("Height of the rect is "+height);            System.out.println("Breadth of the rect is "+breadth);        }    }    class Inheritence    {        public static void main(String [] args)        {            new A(5,6,7);            new B().display();        }    }
查看完整描述

3 回答

?
慕的地10843

TA贡献1785条经验 获得超8个赞

我试图从 A 类中调用变量长度、宽度、高度


不,您可能想使用 A实例中的变量。


我认为您需要的是在B其中定义的复制构造函数,它将作为参数 a A。


所以定义它,B例如


public B(A a){

   super(a.length, a.breadth, a.height);

}

现在你可以这样做:


A a = new A(5,6,7);

new B(a).display();


查看完整回答
反对 回复 2021-12-22
?
慕运维8079593

TA贡献1876条经验 获得超5个赞

A objA = new A(5,6,7)-使得称为对象objA和属性集lengthbreadthheight5,6,7分别。

B objB = new B()- 创建一个objB使用新属性调用的对象lengthbreadth并且height根本不设置它们,因此没有什么可显示的。

如果要将值设置为类的属性,请在类B中创建构造函数B并将值分配给字段lengthbreadthheight从中继承A


查看完整回答
反对 回复 2021-12-22
?
陪伴而非守候

TA贡献1757条经验 获得超8个赞

您需要做两件事:


将访问修饰符更改为 protected(在此处阅读)

在 B 中创建一个构造函数来设置这些参数的值,例如


public B(int length, int breadth, int height) {

    super(length, breadth, height);

}


完成后,B将可以访问这些成员,并且您将能够打印这些值。


查看完整回答
反对 回复 2021-12-22
  • 3 回答
  • 0 关注
  • 142 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信