Наследование и сбор объектов

#.net #vb.net #class #inheritance #collections

#.net #vb.net #класс #наследование #Коллекции

Вопрос:

у меня есть основной вопрос.

допустим, у нас есть 3 класса:

 Class S, class A, class B
A and B inherits S.
 

A имеет свойство A1, а B имеет свойство B1.

у нас также есть коллекция объектов, в которой есть объекты A и B.

 ex. 
Dim c as Collection = new Collection
c.add(new A)
c.add(new B)
 

Теперь мы хотим создать общий объект, который будет считываться из коллекции.

 ex .
Dim  obj as S
 

как мы можем привести obj, чтобы увидеть свойства A1 или B1 в соответствии с классом;

Комментарии:

1. я не уверен, что именно вы хотите сделать. Для простого приведения используйте CType(param, Type)

Ответ №1:

Вы можете использовать TypeOf для проверки типа объекта перед приведением, хотя TryCast может быть лучше в зависимости от того, что вы хотите сделать. Также взгляните на DirectCast .

Комментарии:

1. теперь, когда я пересматриваю это. вы правы. мне нужно сначала определить тип объекта, прежде чем использовать правильное свойство.