Ga naar inhoud

Inheritance (overerving) in VB .NET 2003


Aanbevolen berichten

Hoi Ik zit met het volgende probleem: Ik heb 2 verschillende zelf gedefinieerde klassen (class modules), met elk een aantal properties. Nu wil ik een array maken waar ik instanties van beide klassen in wil stoppen. Dit kan niet, omdat je een array maar van een type kan maken. Dus dacht ik (zoals ik dat van Java gewend ben), ik maak een klasse waar beide klassen vanaf stammen. Volgens de MSDN moet je dan gebruik maken van "Inherits BaseClass" waarbij BaseClass de naam van de overkoepelende klasse is. Maar ik krijg hierbij de volgende compiler error: Invalid outside procedure. Als ik hem vervolgens in de sub Class_Initialize zet, krijg ik hier geen foutmeldingen meer over, maar ziet de klasse waar ik de instanties maak de methodes van de BaseClass niet (beide klassen hebben een paar dezelfde methodes en properties, dus die heb ik in de BaseClass gezet). Kan iemand hier misschien wat licht op werpen, of anders een andere manier geven om een array van 2 verschillende typen te maken. Alvast bedankt, El Loco
Link naar reactie
[quote:6fa7b447e8="elloco"]Hoi Ik zit met het volgende probleem: Ik heb 2 verschillende zelf gedefinieerde klassen (class modules), met elk een aantal properties. Nu wil ik een array maken waar ik instanties van beide klassen in wil stoppen. Dit kan niet, omdat je een array maar van een type kan maken. Dus dacht ik (zoals ik dat van Java gewend ben), ik maak een klasse waar beide klassen vanaf stammen. Volgens de MSDN moet je dan gebruik maken van "Inherits BaseClass" waarbij BaseClass de naam van de overkoepelende klasse is. Maar ik krijg hierbij de volgende compiler error: Invalid outside procedure. Als ik hem vervolgens in de sub Class_Initialize zet, krijg ik hier geen foutmeldingen meer over, maar ziet de klasse waar ik de instanties maak de methodes van de BaseClass niet (beide klassen hebben een paar dezelfde methodes en properties, dus die heb ik in de BaseClass gezet). Kan iemand hier misschien wat licht op werpen, of anders een andere manier geven om een array van 2 verschillende typen te maken. [/quote:6fa7b447e8] Gaat het om VB 6 of lager? Of om VB.Net?
Link naar reactie
  • 2 weken later...
In .NET heb je een ArrayList, daar kan je objecten instoppen en zodoende jouw "probleem" oplossen: [code:1:60199ef3de] System.Collections.ArrayList arrayList = new System.Collections.ArrayList(); arrayList.Add(klasse1); arrayList.Add(klasse2); [/code:1:60199ef3de] De voorbeeld code is in C#, maar het idee en het type object dat je kunt gebruiken is hetzelfde.
Link naar reactie

Om een reactie te plaatsen, moet je eerst inloggen

Gast
Reageer op dit topic

×   Geplakt als verrijkte tekst.   Herstel opmaak

  Er zijn maximaal 75 emoji toegestaan.

×   Je link werd automatisch ingevoegd.   Tonen als normale link

×   Je vorige inhoud werd hersteld.   Leeg de tekstverwerker

×   Je kunt afbeeldingen niet direct plakken. Upload of voeg afbeeldingen vanaf een URL in

×
×
  • Nieuwe aanmaken...