在其他方法中使用对象状态

时间:2018-01-15 20:08:39

标签: java

我创建了一个这样的实例:

Dog dog1 = new Dog();

和两种方法:

public void name(String name)
{
}

public int move(int distance)
{
    System.out.println("Dog has moved " + distance + " ft.";
    return distance;
}

main方法中的代码为:

dog1.name("Spike");
dog1.move(5);

我的问题是:我可以用move()方法做什么,#34; Dog"从println中取代狗的名字(Spike)?

2 个答案:

答案 0 :(得分:3)

class Dog {
    private String name;

    public void setName(String nameIn) {
        name = nameIn;
    }

    public int move(int distance) {
        System.out.println(name + " has moved " + distance + " ft.");
        return distance;
    }
}

Dog dog = new Dog();
dog.setName("Spot");
dog.move(5);

我冒昧地改变了你的一个方法的名字。你可以命名方法" name"就像你做的那样,改变变量的名称(比如dogName)。

答案 1 :(得分:2)

基本上,这是你问题的答案。

private String name;

public void name(String name)
{
    this.name = name;
}

public int move(int distance)
{
    System.out.println(name+" has moved " + distance + " ft.");
    return distance;
}

您需要在dog类中创建变量“name”。 现在您拥有变量“name”,可以使用方法“name”进行设置。 当您使用“移动”方法进行打印时,只需编写name+即可使用名为name的变量。

顺便说一下,方法“name”是一个setter,通常标准看起来像这样 -

public void setName(String name) {
    this.name = name;
}