Получение типа экземпляра
У каждого производного типа существует метод ПолучитьТип(), наследуемый от типа Объект, который возвращает значение типа Тип. Из этого следует, что у любого экземпляра можно вызвать метод ПолучитьТип(). Это хороший пример наследования контракта.
Для того чтобы получить список базовых типов конкретного типа, у экземпляра типа Тип используется свойство БазовыеТипы.
Получение базовых типов для выбранного типа
В этом примере показано, как получить список базовых типов для выбранного типа.
метод БазовыеТипыДляВыбранногоТипа()
ПоказатьБазовыеТипы(Тип<Число>)
ПоказатьБазовыеТипы(Тип<Массив<Число>>)
ПоказатьБазовыеТипы(Тип<ПотокЗаписи>)
ПоказатьБазовыеТипы(Тип<ИсключениеНедопустимыйАргумент>)
;
метод ПоказатьБазовыеТипы(Параметр: Тип): Строка
пер Результат = "Предки типа %{Параметр.ПолучитьТип()}:"
пер ВсеПредки: Множество<Тип> = СобратьПредков(Параметр)
для Элемент из ВсеПредки
Результат += " " + Элемент.ВСтроку()
;
возврат Результат
;
метод СобратьПредков(Значение: Тип, Предки: Множество<Тип> = {}): Множество<Тип>
для БазовыйТип из Значение.БазовыеТипы
Предки.Добавить(БазовыйТип)
СобратьПредков(БазовыйТип, Предки)
;
возврат Предки
;