Цитата:
Сообщение от ps_spectre
wvxvw, кста, а зачем super? если можно this ? Ну в смысле, как лучше использовать?.. или больше дело вкуса?
|
Я пишу this если именно этот класс объявил метод / свойство, либо этот метод предназначен для того, чтобы его переопределил наследник и при этом нужно чтобы другие ссылки на этот метод в в классе наследнике тоже указывали не переопределенный метод. (Второй враиант - довольно редкая ситуация). Например, у нас есть функция invalidateSize() которая в свою очередь вызывает invalidateWidth() и invalidateHeight(), предположим, наследник переопределил invalidateWidth(), в таком случае, чтобы наследник из invalidateSize() вызвал свою (а не super) функцию, я буду писать this. По умолчанию - я всегда пишу super (птому что если не указывать, то по умолчанию - this).
Кроме того, мне так удобнее ориентироваться - т.как если я вижу super - я уже знаю, что это "не родное". Ну и если ошибки - сразу знаешь где искать.