Обратится к наследнику из класса MustInherits

Язык Visual Basic на платформе .NET.

Модераторы: Ramzes, Sebas

Sebas
Неуловимый Джо
Неуловимый Джо
Аватара пользователя
 
Сообщения: 3626
Зарегистрирован: 12.02.2002 (Вт) 17:25
Откуда: столько наглости такие вопросы задавать

Обратится к наследнику из класса MustInherits

Сообщение Sebas » 19.09.2006 (Вт) 14:34

Собственно, как получить ссылку на наследующий класс из моего класса?
- Я никогда не понимал, почему они приходят ко мне чтобы умирать?

sebas<-@->mail.ru

Sebas
Неуловимый Джо
Неуловимый Джо
Аватара пользователя
 
Сообщения: 3626
Зарегистрирован: 12.02.2002 (Вт) 17:25
Откуда: столько наглости такие вопросы задавать

Сообщение Sebas » 19.09.2006 (Вт) 14:35

Что то кажется в сторону Protected....
- Я никогда не понимал, почему они приходят ко мне чтобы умирать?

sebas<-@->mail.ru

Viper
Артефакт VBStreets
Артефакт VBStreets
Аватара пользователя
 
Сообщения: 4394
Зарегистрирован: 12.04.2005 (Вт) 17:50
Откуда: Н.Новгород

Сообщение Viper » 19.09.2006 (Вт) 14:42

Что-то не приходит в голову ничего позволяющего сделать такое обращение. Может быть после уточнения того зачем такое понадобилось появяться какие-либо мысли?
Весь мир матрица, а мы в нем потоки байтов!

ANDLL
Великий гастроном
Великий гастроном
Аватара пользователя
 
Сообщения: 3450
Зарегистрирован: 29.06.2003 (Вс) 18:55

Сообщение ANDLL » 19.09.2006 (Вт) 18:18

А можно, подробнее , что надо?
Просто обратится?
Код: Выделить всё
MustInherit Class c2
    Sub s1()
        If TypeOf Me Is c1 Then
            CType(Me, c1).s2()
        End If
    End Sub
End Class
Class c1
    Inherits c2
    Sub s2()
        MsgBox("A")
    End Sub
End Class
Гастрономия - наука о пище, о ее приготовлении, употреблении, переварении и испражнении.
Блог

Sebas
Неуловимый Джо
Неуловимый Джо
Аватара пользователя
 
Сообщения: 3626
Зарегистрирован: 12.02.2002 (Вт) 17:25
Откуда: столько наглости такие вопросы задавать

Сообщение Sebas » 20.09.2006 (Ср) 12:52

ANDLL

я не знаю тип с1 в базовом классе

Нужно реализовать базовый функционал использующий методы наследника. Мою ситуацию сложно объяснить.

Например, если работать с архивами разных видов, то Zipclass и RARclass наследуются от ArchiveClass, который имеет несколько методов реализующих базовый фунционал, в которых вызывается наследующий класс.
- Я никогда не понимал, почему они приходят ко мне чтобы умирать?

sebas<-@->mail.ru

Viper
Артефакт VBStreets
Артефакт VBStreets
Аватара пользователя
 
Сообщения: 4394
Зарегистрирован: 12.04.2005 (Вт) 17:50
Откуда: Н.Новгород

Сообщение Viper » 20.09.2006 (Ср) 13:15

Т.е. надо вызвать методы наследника? Если эти методы объявлены в базовом классе, нон не реализованы, то просто, а если базовый класс понятия не имеет об этих методах, то ситуация получается типа "поди туда не знаю куда, сделай то, не знаю что"
Весь мир матрица, а мы в нем потоки байтов!

Sebas
Неуловимый Джо
Неуловимый Джо
Аватара пользователя
 
Сообщения: 3626
Зарегистрирован: 12.02.2002 (Вт) 17:25
Откуда: столько наглости такие вопросы задавать

Сообщение Sebas » 20.09.2006 (Ср) 13:40

ну, естественно, вызывает методы MustInherits
- Я никогда не понимал, почему они приходят ко мне чтобы умирать?

sebas<-@->mail.ru

Viper
Артефакт VBStreets
Артефакт VBStreets
Аватара пользователя
 
Сообщения: 4394
Зарегистрирован: 12.04.2005 (Вт) 17:50
Откуда: Н.Новгород

Сообщение Viper » 20.09.2006 (Ср) 13:53

Оно?

Код: Выделить всё
Public MustInherit Class BaseClass
    Public Sub Method1()
        Method2()
    End Sub
    Public MustOverride Sub Method2()
End Class
Public Class Child1 : Inherits BaseClass
    Public Overrides Sub Method2()
        Debug.Print("Implements by Child1")
    End Sub
End Class
Public Class Child2 : Inherits BaseClass
    Public Overrides Sub Method2()
        Debug.Print("Implements by Child2")
    End Sub
End Class


Sub Main()
        Dim c1 As New Child1
        c1.Method1()
        Dim c2 As New Child2
        c2.Method1()
End Sub


подозреваю что нет...
Весь мир матрица, а мы в нем потоки байтов!

Sebas
Неуловимый Джо
Неуловимый Джо
Аватара пользователя
 
Сообщения: 3626
Зарегистрирован: 12.02.2002 (Вт) 17:25
Откуда: столько наглости такие вопросы задавать

Сообщение Sebas » 20.09.2006 (Ср) 14:47

точняк, то что надо! Как я сам не догадался)

Спасибо!
- Я никогда не понимал, почему они приходят ко мне чтобы умирать?

sebas<-@->mail.ru

Viper
Артефакт VBStreets
Артефакт VBStreets
Аватара пользователя
 
Сообщения: 4394
Зарегистрирован: 12.04.2005 (Вт) 17:50
Откуда: Н.Новгород

Сообщение Viper » 20.09.2006 (Ср) 14:55

вот те раз... Sebas низачот! :D
Весь мир матрица, а мы в нем потоки байтов!


Вернуться в Visual Basic .NET

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 19

    TopList