} public void Work() { VirtMethod(); NonVirtMethod(); Analysis(); } } Заметьте, класс Found, как и все классы, по умолчанию является наследником класса Object, его потомки наследуют методы этого класса уже не напрямую, а через методы родителя, который мог переопределить методы класса Object. В частности, класс Found переопределил метод ToString, задав собственную реализацию возвращаемой методом строки, которая связывается с объектами класса. Как часто делается, в этой строке отображаются значения полей объекта данного класса. На переопределение родительского метода ToString указывает модификатор метода override. Класс Found закрыл свои поля для клиентов, но открыл для потомков, снабдив их модификатором доступа protected. Создадим теперь класс Derived - потомка класса Found. В простейшем случае объявление класса может выглядеть так: public class Derived:Found { } Тело класса Derived |