任何人都可以解释是什么让它成为构造函数?为什么它被描述为构造函数? (第4行)
1. public class Square
2. {
3. private int length;
4. public Square ()
5. {
6. length = 0;
7. }
8. public void setLength(int l)
9. {
10. length = l;
11. }
12. public int getLength ()
13. {
14. return length;
15. }
16. }
答案 0 :(得分:0)
它没有返回类型,它与封闭类的名称相同。它是一个构造函数。如果你不想让它成为一个
public void Square() // <-- a method (with a name that doesn't follow
// naming conventions).
另一方面,如果您想知道何时使用构造函数,那么当有人使用Square
实例化new Square()
的实例时会调用它们。
JLS-8.8. Constructor Declarations说(部分),
和
SimpleTypeName
中的ConstructorDeclarator
必须是包含构造函数声明的类的简单名称;否则会发生编译时错误。在所有其他方面,构造函数声明看起来就像没有结果的方法声明(§8.4.5)。