这行得通吗?
class Cars{ Cars(int speed, int weight) }
我只是想弄清楚构造函数。如果将其称为方法,那么我认为它的工作原理与方法类似。您可以在调用该方法时使用的方法中创建局部变量,因此我不明白为什么在构造函数使用它们之前必须先声明实例变量。
在您的示例中,速度和权重不是实例变量,因为它们的范围仅限于构造函数。您可以在外部声明它们,以使它们在整个类(即整个类的对象)中可见。构造函数的目的是初始化它们。
例如以这种方式:
public class Car { // visible inside whole class private int speed; private int weight; // constructor parameters are only visible inside the constructor itself public Car(int sp, int w) { speed = sp; weight = w; } public int getSpeed() { // only 'speed' and 'weight' are usable here because 'sp' and 'w' are limited to the constructor block return speed; } }
这里sp和w是被用于设置实例变量的初始值的参数。它们仅在构造函数执行期间存在,并且无法以任何其他方法访问。
sp
w