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

问题描述:

这是为什么?:法律为什么与该类名称相同的方法不需要返回类型?

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

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

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

清除现在。我会尽快得到这种语言,而不是像你们这样的人的伟大投入。非常感谢你! – 2011-04-22 22:31:56

这是一个构造函数。一旦对象被初始化,它就会被调用。例如:

TwoFrames twoFrames = new TwoFrames();

不同于常规的方法构造不返回任何值。为什么要这样?

此外,构造函数必须具有相同名称作为类。

希望这可以帮助你。

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

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

与类相同名称的方法是构造函数,当创建类的对象时调用该构造函数。

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

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