gpt4 book ai didi

java - 创建带参数的构造函数

转载 作者:行者123 更新时间:2023-12-02 03:52:53 25 4
gpt4 key购买 nike

这可能是一个愚蠢的问题,但我无法让我的程序运行。
我必须:

Add a constructor to Hero that only takes a World as a parameter. Do not do anything in the constructor except set the World instance variable to the parameter passed in.

到目前为止我已经

public Hero(World world){
this.world = world;
}

这是对的吗?稍后在我的程序中尝试调用 world,但它不起作用。

最佳答案

这确实是定义将参数作为输入的构造函数的方法。

您可能忽略的一个问题是,当调用构造函数时,您必须为其提供一个值。例如,如果您定义了一个类 Hero:

public class Hero {

private World world;

public Hero (World world) {
this.world = world;
}

}

不能再用以下方式构建英雄:

Hero hero = new Hero();

Indeed, the new Hero(); expects a World. You can for instance first construct a World and feed it to the hero:

World world = new World();
Hero hero = new Hero(world);

您还必须定义一个类World(在名为World.java的文件中)。例如这个 stub :

public class World {

}

(如果您自己不提供构造函数,Java 将定义 default constructor itself )。

根据您编译项目的方式(使用 IDE、使用命令行...),您有时需要自己将此文件添加到您的项目中,或者使用以下命令进行编译:

javac Hero.java World.java

(也许还有其他 .java 文件)

关于java - 创建带参数的构造函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35732293/

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