Допустим, у меня есть класс со следующей структурой, и я хочу переопределить один из его методов делегата (или более, в общем, один из его открытых методов), но теперь он основан на некоторых частных методах.Есть ли способ расширить его или я должен просто заключить, что он не был разработан с учетом расширяемости?
MyBaseClass.h:
@interface MyBaseClass : UIView <UITableViewDataSource, UITableViewDelegate>
{
}
// some public methods
@end
MyBaseClass.m:
@interface MyBaseClass (Private)
- (void)_privateMethod1;
- (void)_privateMethod2;
@end
#pragma mark - UITableViewDataSource
// ------ I'D LIKE TO CHANGE THE BEHAVIOR OF THIS METHOD EXTENDING MyBaseClass
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)rowIndexPath {
[self _privateMethod1];
[self _privateMethod2];
}
@end
Мне также нужно обратиться к закрытым методам, если я действительно буду расширять класс, но, очевидно, я не хочу получать доступ к каким-либо закрытым методам.Извините, если вопрос звучит несколько тривиально.
Спасибо