0

在 ColdFusion 10 中,通过<cfset THIS.invokeImplicitAccessor = "true">在 application.cfc 中进行设置,我们现在可以直接访问属于 cfc 的任何属性。

我不确定开发人员为什么会使用这种功能。

我的问题是,这不违反面向对象编程的数据隐藏原则吗?

4

1 回答 1

5

隐式访问器是一种既定的 OO 风格(它们本身实际上不是 OO 概念;它只是语法糖)概念(请参阅C# 的访问器文档)。这只是用于打开它们的 CFML 机制(默认情况下它们不打开)。我看不出这与“数据隐藏原则”有什么关系。

它所做的只是意味着而不是这样做:

myObj.getProperty();

可以这样做:

myObj.property;

使用后一种语法,getProperty()仍然被调用,它只是被隐式调用。

于 2014-01-03T13:57:25.573 回答