Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/399.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 使用一个参数调用非void方法,但需要两个对象_Java_Object - Fatal编程技术网

Java 使用一个参数调用非void方法,但需要两个对象

Java 使用一个参数调用非void方法,但需要两个对象,java,object,Java,Object,例如,starA.addstarsize(starB)。这个方法是否可能返回另一个新的恒星对象。如果是的话,我该怎么写呢。把它写成 public void addsizestar(starB) public static star addsizestar(startB) 不返回新的star对象,只更新starA并将其写入 public void addsizestar(starB) public static star addsizestar(startB) 需要另一个参数。如果可能

例如,starA.addstarsize(starB)。这个方法是否可能返回另一个新的恒星对象。如果是的话,我该怎么写呢。把它写成

public void addsizestar(starB) 
public static star addsizestar(startB)
不返回新的star对象,只更新starA并将其写入

public void addsizestar(starB) 
public static star addsizestar(startB)

需要另一个参数。如果可能的话,我想将其保留在一个输入参数上。

您需要创建一个新的starA\,对其进行更改并返回它

public Star addsizestar(StarB b) {
    Star result = new Star();

    //your code, you can use 'b' and 'this' for work

    return result;
}
public star addsizestar(starB)
{
    starT = new star(starA parameters); // you will create new star with the
    //size and what parameters you have
    sratT.addstarsize(starB);
    return starT;
}
几点:
1.类名称以大写字母开头。它应该是
Star
,而不是
Star

2.若您希望方法返回某些内容,那个么它不能是void类型。
3.如果不需要的话,不要使方法静态。静态方法有它们的缺点

Try,您可以这样做
starC=starA.addsizestar(starB)
,但您应该使用Java命名约定,例如
Star
addSizeStar