在Coldfusion中使用CreateObject将参数传递给构造函数

Lof*_*ftx 6 coldfusion constructor arguments createobject

我正在尝试使用CreateObject函数在Coldfusion中使用Java对象.

当Java类中的构造函数不接受任何参数时,这可以正常工作,例如:

MyObject myObject = new MyObject();
Run Code Online (Sandbox Code Playgroud)

去吧

myObject = CreateObject("java",  "com.something.MyObject");
Run Code Online (Sandbox Code Playgroud)

但我不知道如何将参数传递给构造函数,如下所示:

MyObject2 myObject2 = new MyObject2(myArgment);
Run Code Online (Sandbox Code Playgroud)

我确信这应该很简单,但我无法在任何地方找到它.

谢谢,

汤姆

ryb*_*ber 16

您可以在init方法中传递它们,如下所示:

myObject = CreateObject("java",  "com.something.MyObject").init(constructorArg1, constructorarg2);
Run Code Online (Sandbox Code Playgroud)

请注意,如果您根本不调用init,那么您将只使用对象的静态方法而不是实例.

  • 只是为了澄清一下,在java对象上调用init()方法会调用该对象的构造函数.Init()不是对象的真正方法,仅用于调用构造函数:http://livedocs.adobe.com/coldfusion/8/htmldocs/Java_7.html (2认同)