У меня возникла неожиданная проблема с языком разметки ColdFusion. Допустим, у меня есть следующие компоненты. Если как публичная, так и частная функция определены в «базовом» компоненте, может ли первый все еще ссылаться на частный при вызове из экземпляров расширяемого типа «под»?Доступ к публично-частному доступу через наследование компонентов в ColdFusion
Program.cfc
<cfcomponent>
<cffunction access="public" name="doOperation">
<cfset this.checkValue(-14)>
</cffunction>
<cffunction access="private" name="checkValue">
<cfargument name="notNeg" required="yes" type="numeric">
<cfif arguments.notNeg LT 0 >
<cfthrow message="Negative Numbers not allowed">
</cfif>
</cffunction>
</cfcomponent>
SubProgram.cfc
<cfcomponent extends="Program">
</cfcomponent>
Run.cfm
<cfobject component="SubProgram" name="this.instance">
<cfset this.instance.doOperation()> <<<<----ERROR---->>>>
ColdFusion бросает е rror
способ
checkValue
не был найден в компонентеSubProgram
. Убедитесь, что метод определен ...
В чем проблема? Никаких точек погрешности для инкапсуляции!
Спасибо, я знал, что не сумасшедший. BTW это CF8. – Euler
Ах, ОК: придерживайтесь тегами. Вы не можете перейти на поддерживаемую версию CF (например: 10 или 11?). 8 - немного мусор. –