Zugriff aus Unterklasse auf Oberklasse

Status
Dieses Thema wurde gelöst! Zur Lösung gehen…

Rene42

Erfahrenes Mitglied
Hallo miteinander,

ich habe folgendes Konstrukt:

Visual Basic:
 Public Class Test

  Private Class Erweiterung

   Public Shared Sub Aufgabe()

   End Sub

  End Class

 End Test

 Sub Main()

  Public MeinObjekt As New Test

  MeinObjekt.Erweiterung.Aufgabe()

 End Sub

Gibt es ne Möglichkeit, dass "Aufgabe" nun auf "MeinObjekt" zugreifen kann. Oder muss ich es der Aufgabe als Parameter mitgeben?
 

Spyke

Premium-User
Nein,
shared (in C# ist das eqivalent static) kennt deine Instanz von Test nicht.
Musst als Parameter angeben.
 

Rene42

Erfahrenes Mitglied
Vielen Dank für deine Antwort. Der Stress des Berufslebens lässt mich nun erst wieder antworten.

Du hast natürlich Recht das Beispiel war so nicht richtig:

Visual Basic:
 Public Class Test

  Public ID As Long

  Private Class Erweiterung

   Public Sub Aufgabe()

   End Sub

  End Class

 End Test

 Sub Main()

  Public MeinObjekt As New Test

  MeinObjekt.Erweiterung.Aufgabe()

 End Sub

Die Frage nun nochmal richtig formuliert. Kann ich in der Routine Aufgabe an den Wert von ID kommen? Oder muss ich den als Parameter mitgeben?
 

Spyke

Premium-User
Musst mit teilen, auch wenn die Beschreibung von Erweiterung innerhalb der Beschreibung von Test ist.
Erweiterung
wüsste nicht welche Isntanz von Test gemeint wäre würde die Methode Aufgabe aufgerufen werden.

Vielleicht sollte man auch verstehen wie C# die Daten intern hält, ich versuchs mal eifnach zu erklären.

Die Beschreibungen der Klassen Test, Erweiterung und Main liegen nur einmal vor.
Während dem gegenüber C# die Daten der jeweiligen Objektinstanzen seperat hält und quasi immer wieder in der Klassen beschreibung nach schaut was zu tun ist.
Quasi eine 1 zu N Beziehung (1 Beschreibung zu N Daten)
 
Status
Dieses Thema wurde gelöst! Zur Lösung gehen…