WCM - Das österreichische Computer Magazin Forenübersicht
 

Zurück   WCM Forum > Rat & Tat > Programmierung

Programmierung Rat & Tat für Programmierer

Microsoft KARRIERECAMPUS

Antwort
 
Themen-Optionen Ansicht
Alt 09.07.2003, 19:24   #21
Seidl
Veteran
 
Registriert seit: 10.01.2001
Beiträge: 478


Standard

Mit den ersten beiden Punkten bist du absolut richtig gelegen. Die beiden Event-Prozeduren "Class_Initialize()" und "Class_Terminate()" reagieren quasi auf die Geburt bzw. den Tod eines Objekts der Klasse. Sie heissen auch überall gleich. Allerdings muss ich hier eine kleine Einschränkung setzen. In VB sieht die Sache wieder ein wenig anders aus. Dort kann man dem Konstruktor "New" auch Werte übergeben und diese zum Initialisieren verwenden.

Das sinnlose Property mit dem Recordset habe ich eigentlich nur eingebaut, um ein Property mit einem Objekt zu haben. Damit wollte ich den Unterschied zwischen "Property Set" für Objekte und "Property Let" für Variablen veranschaulichen. Ist aber auch nicht so besonders wichtig. In .NET gibt's diese Unterscheidung meines Wissens ohnehin nicht mehr.

Ableitungen von Klassen sind zwar in VB, nicht aber in VBA möglich. Das selbe gilt auch für Schnittstellen (Stichwort "Implements"). Dazu gleich wieder ein kleiner .NET-Exkurs; In .NET kann man nicht nur Klassen von einer Basis-Klasse ableiten, sondern man kann das selbe auch für Formulare und Controls machen.

Was zu den Klassen in VBA vielleicht sonst noch erwähnenswert wäre ist die Möglichkeit zu "Private / Friend / Public" Prozeduren. Friend Prozeduren sind in Standardmodulen nicht möglich. Solche Prozeduren sind nur innerhalb des Projekts aufrufbar; also nicht ganz Private aber auch nicht ganz public
Manchmal kann auch eine als Static definierte Variable ganz praktisch sein. Die behält ihren Wert solange der Code ausgeführt wird und bleibt damit in einer Prozedur auch zwischen Aufrufen erhalten. Das ist aber keine Besonderheit von Klassen und sei hier nur mal so erwähnt weil es auch in diesem Zusammenhang nützlich sein kann.
Wenn wir jetzt in Java oder C++ wären, müsste nach Static auch Final angesprochen werden. Ein so definiertes Member wäre allen Objekten einer Klasse gemeinsam. Gibt's in VBA und VB leider nicht aber ich hoffe diesbezüglich auf .NET

Damit dürfte ich jetzt mein Wissen ziemlich komplett vor dir ausgebreitet haben. Viel mehr fällt mir nämlich zu dem Thema wirklich nicht mehr ein. Falls du noch Fragen hast, weisst du ja wie du mich erreichst
Seidl ist offline   Mit Zitat antworten
Alt 09.07.2003, 19:34   #22
renew
Inventar
 
Registriert seit: 22.10.2000
Alter: 41
Beiträge: 5.552


Standard

Danke.

Alles hab ich jetzt zwar auch net verstanden, aber das is jetzt auch net so wichtig.

Was ich jetzt aber auch gesehen hab (und nicht wusste), dass man einfach einen Recordset öffnen kann und darin Sachen abspeichern.
Is ja quasi wie ein eigener Datentyp (der mit type und end type) definiert wird - nur dass man noch ein paar Zusatzoperationen hat. Ich denk mal so Gschichten wie rst.RecordCount usw. werden auch funktionieren.

Und danke für dein "Angebot". Ich werde sicher wieder mal darauf zurück kommen - bzw. weiter kleine Schwierigkeiten/Fragen bei div. VB Programmen haben.
renew ist offline   Mit Zitat antworten
Antwort


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.

Gehe zu


Alle Zeitangaben in WEZ +2. Es ist jetzt 05:00 Uhr.


Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Forum SEO by Zoints
© 2009 FSL Verlag