【问题标题】:How to return a new object using a parameter in Java? [closed]如何使用 Java 中的参数返回一个新对象? [关闭]
【发布时间】:2013-10-23 22:49:00
【问题描述】:

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

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

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

我的领域是:

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

}

【问题讨论】:

  • 请停止发布您的问题的外部截图。
  • 我是唯一一个看到一堆a代替post的人吗?
  • @vandale 我修好了

标签: java class object parameters numerical-methods


【解决方案1】:

一种方法是在 Dog 类中编写一个复制构造函数,如下所示:

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

然后在 cloneDog() 内部调用它

【讨论】:

    【解决方案2】:

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

    您只需引用要复制的值

    Dog dog1 = new Dog();
    dog1.name = getTegon.name;
    

    【讨论】:

    • 非常感谢!!!它现在可以工作了:) (Y)
    猜你喜欢
    • 1970-01-01
    • 2020-02-17
    • 2016-02-09
    • 1970-01-01
    • 2014-10-15
    • 2010-10-22
    • 1970-01-01
    • 1970-01-01
    • 2016-03-04
    相关资源
    最近更新 更多