Я не верю, что itcl может сделать это вообще.TclOO в 8.7 будет своего рода в состоянии сделать это (сделав метод в суперклассе закрытым), но вы также не сможете вызывать его из других классов;если подкласс может видеть это, он может также переопределить это.Общий принцип состоит в том, что, если пользовательский код хочет вызвать проблемы, он может;это вызовет проблемы в процессе, но вот как работает язык: в конце концов, вы также можете переопределить встроенные команды, такие как set
и if
и proc
, и это может вызвать гораздо больше неприятностей.
Помните, что в Tcl видимость методов не является механизмом безопасности.Все механизмы безопасности всегда связаны с переводчиками.