|
наследование в классах VBA
|
|||
---|---|---|---|
#18+
И еще раз здравствуйте!) Подскажите пожалуйста, есть ли полноценное наследование в VBA? Что имею в виду, приведу аналогию с Java. (без конструкторов и полей, просто концепцию) Есть некий класс с определенным количеством методов . Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9.
В какой то момент мне потребовалось создать еще один класс, который офигенно похож на первый, первые два метода должны работать как в этом первом, но вот третий отличается. Вместо того ,чтобы создавать заново МойКласс2 и прописывать для него методы №1 и №2 заново, в Java при создании я просто наследую все методы из МойКласс1, а третий метод так и быть создаю в новом МойКласс2 :) Код: java 1. 2. 3. 4. 5. 6.
Получаем на выходе в классе №2 все работающие автоматом методы из первого класса + дополнительный третий. Можно можно ли так в VBA? ... |
|||
:
Нравится:
Не нравится:
|
|||
30.10.2019, 15:58 |
|
наследование в классах VBA
|
|||
---|---|---|---|
#18+
Сергей ЛаловПодскажите пожалуйста, есть ли полноценное наследование в VBA?нет ... |
|||
:
Нравится:
Не нравится:
|
|||
30.10.2019, 16:16 |
|
наследование в классах VBA
|
|||
---|---|---|---|
#18+
Может это поможет наследование в VBA Схема наследования VBA Наследование классов в VBA врукопашную Наследование в VBA ... |
|||
:
Нравится:
Не нравится:
|
|||
30.10.2019, 16:18 |
|
наследование в классах VBA
|
|||
---|---|---|---|
#18+
Сергей Лалов, есть только наследование интерфейсов, но всё (методы, свойства, события) надо реализовывать. ... |
|||
:
Нравится:
Не нравится:
|
|||
30.10.2019, 16:21 |
|
наследование в классах VBA
|
|||
---|---|---|---|
#18+
Сергей Лалов, в VBA концептуально, делаю так а)создается экземпляр модуля класса MyClass1, в котором прописывается дочерний модуль класса с новыми свойствами myClass2, он запускается, и из него берутся новые свойства, и ставим переключатель:то у нас модуль класса работает один, то + потомок, то с кучей потомков(но больше одного потомка как то не доводилось запускать, а вот потомок-потомок- было). более того, возможно и обратное получение данных от родителя через myClass2. Регистрируем в myClass2 родителя, связываемся myClass2.parent=me и получаем данные из MyClass1. б) создаем новый модуль класса myClass2 и цепляем к нему старый модуль класса потомком MyClass1, запускаем и получаем оттуда нужные нам данные. ... |
|||
:
Нравится:
Не нравится:
|
|||
30.10.2019, 16:29 |
|
наследование в классах VBA
|
|||
---|---|---|---|
#18+
Спасибо всем за наводки!) Буду вкуривать. На пару ссылок от Joss вчера вечером уже ходил, искал) Прямого решения, не "из-за угла" по ходу нет, к сожалению. Наследование интерфейса к сожалению это не наследование класса). Я при наследовании интерфейса не смогу перезагрузить (типа @overrige как в Java) метод к примеру. В общем все сводиться к юзанью пропертей) alecko - у вас народное, физическое так сказать наследование) По сути это как два экземпляра одного и того же класса, просто для второго вы используете метод /свойство, который в первом экземпляре не использовали:) Я примерно также пытался обкрутить свою реализацию наследования )) ... |
|||
:
Нравится:
Не нравится:
|
|||
30.10.2019, 16:49 |
|
наследование в классах VBA
|
|||
---|---|---|---|
#18+
Сергей Лалов, нет это не так. я спрашиваю у 1-го, он спрашивает у второго и предает ответ мне первый. классы разные. причем абсолютно. причем второй это может быть вообще отчет какой-нить. Второй модуль класса - это не копия первого - совсем другой модуль класса, запущен внутри первого модуля класса и может быть даже не виден нигде, кроме как у родителя не "Public" а "Frend". Наследование интерфейсов работает нормально тоже, а вот наследования методов - тут увы и ах для каждого случая нужно прописывать свою реализацию методов, тогда как модуль интерфейсов можно использовать один. ... |
|||
:
Нравится:
Не нравится:
|
|||
30.10.2019, 17:09 |
|
наследование в классах VBA
|
|||
---|---|---|---|
#18+
Сергей ЛаловНаследование интерфейса к сожалению это не наследование класса).ну какбэ я тебе сразу и написал, что его нет. ... |
|||
:
Нравится:
Не нравится:
|
|||
30.10.2019, 17:21 |
|
|
start [/forum/topic.php?fid=45&fpage=25&tid=1610402]: |
0ms |
get settings: |
9ms |
get forum list: |
11ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
41ms |
get topic data: |
11ms |
get forum data: |
2ms |
get page messages: |
43ms |
get tp. blocked users: |
1ms |
others: | 13ms |
total: | 139ms |
0 / 0 |