Нет - вы не можете подклассифицировать класс Sealed
, а matlab.graphics.primitive.Patch
- это встроенный класс, поэтому вы не можете сделать (взломать) править, чтобы распечатать его.
Лучшее, что вы можете сделать, это использовать шаблон Adapter - создать свой собственный класс, хранения Patch
как частный (и, возможно, скрытое) свойство, а затем обернуть все свои свойства и те свои собственные, реализующие set
и get
методы, которые передают значение в/из базового Patch
. Сделайте что-нибудь подобное для любых методов Patch
, которые вам нужны. Вам также может потребоваться прослушать события изменения свойств на Patch
и ответить на них соответствующим образом.
Затем вы можете добавить свои собственные методы и/или изменить существующий метод и поведение свойств по мере необходимости.
Да, эти идеи - это некоторые из тех вещей, о которых я думал сначала. Но мне было интересно, будет ли (аккуратный) недокументированный способ обойти это ограничение (например, путем доступа к базовым объектам java и т. Д.). Я фактически реализовал то, что вы предлагали на самом деле, но, как я уже сказал, мне интересно, существует ли более общий способ достижения такого же результата. – Sia
К сожалению нет, не то, что я знаю. –