gpt4 book ai didi

java - super(variableName) 之间的区别;和 super.variableName

转载 作者:行者123 更新时间:2023-12-01 07:46:00 24 4
gpt4 key购买 nike

enter image description here当您想要初始化参数并且想要分配其中之一时,构造函数中的 super(variable-name);super.variableName = Something; 之间有什么区别它们是父类的变量吗?

例如,我想实现“Zahnradfraese”的构造函数,它采用参数“int Kennung”,并且该参数应分配给父类“Produktionmittel”的属性“kennung”

当我想从父类中调用变量时,我应该始终使用 super 吗?或者如果子类中有另一个同名变量,我应该使用它吗?

最佳答案

What is the difference between super(variableName); and super.variableName = something;?

method()(此处为super(variableName))是方法调用(此处为父级的构造函数调用)。

super.variableName = Something; 是对父级字段的赋值。

Should I always use super when I wanna call a variable from this parent class or I just use it if I have another variable with the same name in the child class?

super(variableName) 可以初始化父级的内部状态,特别是 super.variableName。在访问 super.variableName 之前初始化它是合理的。您列出的两种方法都可以用于此目的。只要确保没有代码重复即可。

I want to implement the constructor of the Zahnradfraese and it takes the parameter int Kennung and this parameter should be assigned to the attribute kennung of the parent class Produktionmittel.

Produktionmittel 添加一个构造函数,该构造函数采用 int

public Produktionmittel(int i) {
kennung = i;
}

并从 child 那里调用它:

public Zahnradfraese(int kennung) {
super(kennung);
}

关于java - super(variableName) 之间的区别;和 super.variableName,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52356075/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com