如何在不使用Java的情况下在ColdFusion中创建类和对象?

时间:2013-08-21 06:47:25

标签: java coldfusion

我正在将PHP插件转换为ColdFusion。在PHP中,使用了OO概念,因此使用了类和对象。

如何将这些类转换为ColdFusion类并为这些类创建对象。

此外,我创建了Java类并使用<cfobject>标记,我创建了对象,但我需要ColdFusion类并创建对象。

如果您有任何想法,请与我们联系。

2 个答案:

答案 0 :(得分:6)

ColdFusion确实有类和对象,并遵循有限的OOPS原则。你可以做继承,接口。仍然不允许使用多态函数。

ColdFusion中的类称为组件。 CFC - &gt; ColdFusion组件。根据ColdFusion版本,您可以在脚本模式或标记模式下编写它们。

关于创建组件及其对象,您可以参考the documentation了解CF8。

您提到的createObject()方法是创建不同类型对象的一种方法。其他方法是使用&lt; cfinvoke&gt;或&lt; cfobject&gt;

希望这会有所帮助。只需详细阅读文档,他们每次都会帮助您。

答案 1 :(得分:1)

实际上,您应该能够通过比现有技术更彻底地阅读文档来解决这个问题。但是这个问题很容易回答。首先让我解除你的一些事情:

  

没有选项可以在coldfusion中创建类而不使用   java,com和corba

这只是你没有正确阅读。即使在你链接到的页面上(cfobject,它指向一个过时版本的ColdFusion btw),它提供的第三个链接“组件对象”讨论了实例化本机CFML“类”(CFML用语中的“组件”,由于某些原因)。从顶级浏览中可能并不清楚“组件”是“类”,但如果你正在学习某些东西,那么你应该做的不仅仅是顶级浏览。

您正在从一个非常奇怪的角度接近您的学习:如果您想了解如何定义对象将成为其实例的类,那么阅读如何实例化对象并不是您应该采取的方向。它有点暗示你对OO知识的差距(这可能会使你的工作成为你的挑战)。

无论如何,当然CFML允许在本地语言中定义类及其用法。并且自从v6.0开始就已经能够这样做了(尽管在十多年前,由于一些糟糕的实施决策,这种情况在6.1之前还没有真正准备就绪)。

通过阅读以“Building and Using ColdFusion Components”开头的文档,可以找到更广泛问题的答案。但基本形式是:

// Foo.cfc
component {
    public Foo function init(/* args here */){
        // code here
    }
    // etc
}

就是这样。