Класс без наследников в C#
Отдельные типы задуманы как конечные звенья иерархии без потомков.
Ключевое слово sealed перед class запрещает
дальнейшее наследование: объявление
class Child : AppSettings не пройдет
компиляцию. Запишем sealed-класс AppSettings
и пример объекта:
sealed class AppSettings {
public int timeout = 30;
}
// class ExtendedSettings : AppSettings { } // ошибка
Значение таймаута на объекте настроек:
AppSettings settings = new AppSettings();
Console.WriteLine(settings.timeout);
Объявите класс AppSettings
так, чтобы от него нельзя было наследоваться.
Попробуйте объявить класс-наследник
от AppSettings и убедитесь,
что код не компилируется.