Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/333.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 这个构造函数是如何工作的?_Java_Constructor - Fatal编程技术网

Java 这个构造函数是如何工作的?

Java 这个构造函数是如何工作的?,java,constructor,Java,Constructor,我无法理解此构造函数是如何工作的: public class Multiply { //and here i've got this atypical for me constuctor Multiply mult(Multiply a){ Multiply tmp; //code here return tmp; } } 这里没有构造函数,在您的情况下,将出现默认构造函数,并且不带任何特殊操作的类实例将在“new”字上执

我无法理解此构造函数是如何工作的:

public class Multiply {
    //and here i've got this atypical for me constuctor
    Multiply mult(Multiply a){
        Multiply tmp;
        //code here
        return tmp;
    }
}

这里没有构造函数,在您的情况下,将出现默认构造函数,并且不带任何特殊操作的类实例将在“new”字上执行

构造函数与类同名且没有返回类型。您现在看到的是一个名为
mult
的方法,返回类型为
Multiply
。您可能会感到困惑,因为缺少可视性修改器。这是完全有效的,因为在这种情况下使用了默认的可见性
protected

这与:

protected Multiply mult(Multiply a)
构造函数如下所示:

public Multiply(Multiply a)
public Multiply() {
    super();
}
如果未声明构造函数,则默认构造函数将隐式添加到类中。因此,该类有一个如下所示的构造函数:

public Multiply(Multiply a)
public Multiply() {
    super();
}

它是一个方法,而不是构造函数。构造函数永远不能返回某些内容。