У меня есть следующий класс, который является подклассом HashMap
и имеет геттеры и сеттеры для некоторых записей на карте.Доступ к свойствам в подклассе HashMap
Обратите внимание: Этот класс исходит из основы я использую, так что я не могу изменить его
class Mapish extends HashMap {
static final PROPERTY_KEY = 'PROP'
def getProperty() {
get(PROPERTY_KEY)
}
def setProperty(def value) {
put(PROPERTY_KEY, value)
}
}
Можно ли отключить Карта собственности нотации в Groovy для этого класса, так что свойство доступ вызовет геттер? Иными словами, чтобы пройти следующее?
def m = new Mapish()
m.setProperty('value')
assert m.property == 'value' // same as m.getProperty()
и следующий будет бросать groovy.lang.MissingPropertyException
m.PROP
Спасибо за ответ, но мой вопрос заключается в том, что я не могу изменить класс, как он приходит из библиотеки, что приложение использует –
Ahh, вы можете добавить эту информацию в свой вопрос. Неважно, просто видел. – BalRog
Это уже указано в начале, но я отредактирую вопрос, чтобы сделать его более видимым. –