返回仅在JAVA中是什么意思?

Cat*_*ysm 1 java constructor return

我不知道用法是什么return;.这是什么意思 ?它会返回一些东西吗?我认为return关键字用于放回一些值,但我不确定,因为如果构造函数只返回代码下面的类的实例应该是无效的.

public class Test {
 public Test() {
    return;
 }
}
Run Code Online (Sandbox Code Playgroud)

有什么建议 ?

Nag*_*mos 5

它不会返回任何东西.

它表示返回void的任何方法的结束,因此在这种情况下,它表示构造函数的结束.请参阅以下示例:

class Test {

    private int sum;

     public Test(Object otherObj) {
        if (otherObj != null){
           sum = 42;
           return;
        }
        sum = 0;
     }

    public static void main(String[] args) {
        Test testZero = new Test(null);
        Test testNonZero = new Test(testZero);

        System.out.println(testZero.sum);       // 0
        System.out.println(testNonZero.sum);    // 42
    }
}
Run Code Online (Sandbox Code Playgroud)

如果otherObj不为null,sum'll为42,构造函数将停止运行.

如果您有public void someFunction()方法,可以使用相同的策略在某个时刻退出.

  • 不仅仅是建设者.在这种情况下,是的,但我认为说"它意味着构造函数的结束"是误导性的.它还意味着返回void的任何方法的结束. (11认同)