我相信我理解现在的构造函数,但对我而言,似乎它们只是用于将信息传递给另一个类中的方法。那么为什么不调用方法并提供参数呢?我弄错了吗?
答案 0 :(得分:2)
构造函数用于创建对象,而不是普通方法。每当使用new
创建对象时,实际上都会调用构造函数。例如:
new MyClass(); //here MyClass() is a constructor with no params
Note:
构造函数声明看起来像方法声明 - 除了 他们使用类的名称,没有返回类型
答案 1 :(得分:0)
如果我理解正确的话:
总是调用构造函数,因此必须传递这些属性。如果您通过方法传递此信息,则不必传递,因此可能会丢失它们。
答案 2 :(得分:0)
无论何时传递参数,构造函数都用于初始化对象的新实例。
在构造函数中使用参数只是一种方法,可以在对象初始化期间轻松设置一些初始属性,对象最有可能需要这些属性才能按预期工作。
但是,如果不需要为实例对象的正确操作初始化这些属性,那么将它们传递给构造函数更有意义,但只是让一些setter在任何时候传递它们需要。