这个例子是我试图做的,但是ColdFusion说`例程只能被声明一次。 ColdFusion可以做这样的事情吗?
/**
* @hint Handles vehicles
*/
component Vehicle
{
this.stock = "";
this.year = "";
this.make = "";
this.model = "";
public Vehicle function init()
{
return this;
}
public Vehicle function init(string stock)
{
this.stock = stock;
//Get the year, make model of the stock number of this vehicle
return this;
}
public string function getYearMakeModel()
{
var yearMakeModel = this.year & " " & this.make & this.model;
return yearMakeModel;
}
}
奇怪的是,如果我取出第一个init()
,我可以使用new Vehicle()
或new Vehicle(stocknumber)
并以任何一种方式调用init(string stocknumber)
,但这不是我的行为想要...
答案 0 :(得分:3)
通过ColdFusion无法使用例程重载。但是单个函数可以与不同的参数集(set
)一起使用。这开辟了许多方法,您可以使用同一功能来满足不同目的。
例如,下面的函数应同时满足您试图实现的两个构造函数的作用。
required=false