为什么与类同名的方法不需要返回类型?

时间:2011-04-22 21:11:12

标签: java

为什么这是合法的?:

public class TwoFrames extends JFrame {
    public TwoFrames() {
        return;
    };
}

这不是(NetBeans IDE说无效的方法声明;需要返回类型)?:

public class TwoFrames extends JFrame {
    public firstFrame() {
        return;
    };
}

4 个答案:

答案 0 :(得分:4)

public class TwoFrames extends JFrame {
    public TwoFrames() {
        return;
    };
}

这实际上是constructor。构造函数声明看起来像方法,但它们没有返回类型。严格来说,它们不是方法,尽管你可能会不时听到“构造方法”。

答案 1 :(得分:2)

与类同名的方法是一个构造函数,在创建类的对象时调用。

具有不同名称的方法必须具有返回类型,即使它是无效的。

答案 2 :(得分:1)

这是一个构造函数。初始化对象后调用它。例如:

TwoFrames twoFrames = new TwoFrames();

与常规方法不同,构造函数不返回任何值。为什么要这样?

此外,构造函数必须与类具有相同的名称

希望这会对你有所帮助。

答案 3 :(得分:0)

它有一个返回类型,但没有名称。这是因为它返回了类的实例。当您使用new关键字时,会调用此方法中包含的内容。