0

我正在做一个家庭作业问题:

“这个问题的每个部分都要求您编写一个函数,该函数将您在 Q1 中为其创建的类的对象之一作为参数,并对其进行处理。在 Q2A 中编写一个名为 cloneDog() 的方法,该方法采用 Dog 类型的对象并返回一个具有相同名称和品种但年龄为 0 的新 Dog 对象,并且会发出绿色光。原来的狗应该不会受到伤害。

我正在尝试在字段中返回具有不同值的对象。我需要在不更改字段值的情况下返回对象。

我的领域是:

public class Dog
{
    String name;
    int age;
    String breed;
    boolean glowsGreen;
}

我的 Q1A 代码是:

Dog getTegon()
    {
        Dog dog1 = new Dog(); 
        dog1.name = "Tegon";
        dog1.age = 2;
        dog1.breed = "Beagle";
        dog1.glowsGreen = false;
        return dog1;
    }

对于 Q2A,我不知道如何将参数用于不同的值:

Dog cloneDog(Dog getTegon)
{

    enter code here

}
4

2 回答 2

2

i don't know how to use the parameter for different values:

You just reference the values you want to copy

Dog dog1 = new Dog();
dog1.name = getTegon.name;
于 2013-10-15T23:45:24.960 回答
0

One way would be to write a copy constructor in your Dog class like so:

public Dog(Dog otherDog) {
  this.name = otherDog.name;
  this.age = otherDog.age;
  // etc..
}

And then call that inside cloneDog()

于 2013-10-15T23:45:16.020 回答