首先使用较少的参数选择构造函数会有什么缺点?
最好的问候。
答案 0 :(得分:1)
注入器尝试猜测要调用哪个构造函数,具体取决于参数类型信息(并不总是可用),类中的构造函数列表(包括继承的构造函数)以及它可以提供的可用参数。在某些框架中,显式提供了参数,并且注入器不需要解析构造函数,但情况并非总是如此。
我编写了一些简单的构造函数依赖注入代码。当多个构造函数是依赖注入的有效候选者时,它与正则表达式匹配非常相似:假设最长的字符串更具体,因此首先使用。
事实上,注入器假定具有更多参数的构造函数“包装”具有较少参数的构造函数:
MyClass(A,B){
// does something with A and B
}
MyClass(A,B,C){
// should call the previous one
this(A,B);
//then does something with C
}
这适用于任何类型的方法(不仅仅是构造函数)。