Иллюстрированный самоучитель по VB.NET

       

Правила преобразования и обращения к членам классов в иерархии наследования


Объекты производных классов могут храниться в переменных базовых классов:

Dim tom As New Programmer("Tom". 65000)

Dim employeeOfTheMonth As Employee

employeeOfTheMonth = torn

В режиме жесткой проверки типов (Option Strict On), если объект tom хранится в переменной employeeOfTheMonth, для сохранения его в переменной Programmer приходится использовать функцию СТуре, поскольку компилятор заранее не знает, что такое преобразование возможно:

Dim programrnerOnCall As Programmer

programmerOnCal1 = CType(employeeOfTheMonth,Programmer)

Конечно, простое сохранение tom в переменной programmerOnCall выполняется простым присваиванием.

При работе с объектом torn через переменную employeeOfTheMonth вам не удастся использовать уникальные члены, определенные в классе Programmer и отсутствующие в Employee. С другой стороны, как будет показано в следующем разделе, при этом сохраняется доступ ко всем членам класса Programmer, переопределяющим члены класса Employee.



Содержание раздела