Возможный дубликат:
Создание абстрактного класса в Цель C
В Java мне нравится использовать абстрактные классы, чтобы убедиться, что несколько классов имеют одинаковое базовое поведение, например:
public abstract class A
{
// this method is seen from outside and will be called by the user
final public void doSomething()
{
// ... here do some logic which is obligatory, e.g. clean up something so that
// the inheriting classes did not have to bother with it
reallyDoIt();
}
// here the actual work is done
protected abstract void reallyDoIt();
}
Теперь, когда класс B наследуется от класса A, ему нужно реализовать только reallyDoIt()
.
Как это сделать в Objective C? Это вообще возможно? Возможно ли это в Objective C? Я имею в виду, что в Objective C вся парадигма, например, насколько я понимаю, нет способа запретить переопределение метода (например, в Java с 'final')?
Спасибо!