vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
SEPA-Dateien erstellen inkl. IBAN-, BLZ-/Kontonummernprüfung  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2024
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

VB.NET - Ein- und Umsteiger
Problem mit OOP Klassenaufbau 
Autor: Hannibal
Datum: 30.08.12 20:44

Hallo,

will ein Erinnerungsprogramm für Geburtstage usw. schreiben
Leider hab ich ein Problem und weiß nicht wie ich die Klassen genau aufbauen soll.
Ich will ein Interface erstellen, aus dem ich dann eine Generische Klasse erstellen will mit Timerlogik usw.
Ich brauche also einmal einen Erinnerungstext bei normalen Erinnerungen brauche und bei Geburtstagen aber Vorname und Nachname, die ja dann den Erinnerungstext darstellen.
Kann Vor- und Nachname natürlich intern als Erinnerungstext zusammenbauen, aber umgekehrt wird es schon schwieriger. Wie erreiche ich, dass der Erinnerungstext immer richtig gesplittet wird?
Brauche einen kleinen Denkanstoß, hier mal ein kleines Beispiel wie ich mir das ungefähr vorstelle.
 
Public Interface IErinnerungen
    Property Erinnerungsdatum As Date
    Property Erinnerungstext As String
End Interface
 
Public Enum ErinnerungSortierung
    Erinnerungstext
    Erinnerungsdatum
End Enum
 
Public MustInherit Class ErinnerungsBasis
    Implements IErinnerungen
 
    Private myErinnerungsdatum As Date = #1/1/1900#
    Private myErinnerungstext As String = ""
 
 
    Public Overridable Property Erinnerungsdatum As Date Implements _
      IErinnerungen.Erinnerungsdatum
        Get
            Return myErinnerungsdatum
        End Get
        Set(ByVal value As Date)
            myErinnerungsdatum = value
        End Set
    End Property
 
    Public Overridable Property Erinnerungstext As String Implements _
      IErinnerungen.Erinnerungstext
        Get
            Return myErinnerungstext
        End Get
        Set(ByVal value As String)
            myErinnerungstext = value
        End Set
    End Property
End Class
 
Public Class Erinnerung
    Inherits ErinnerungsBasis
 
End Class
 
Public Class Geburtstag
    Inherits ErinnerungsBasis
 
    Private myVorname As String
    Private myNachname As String
 
    Public Property Geburtsdatum As Date
        Get
            Return MyBase.Erinnerungsdatum
        End Get
        Set(ByVal value As Date)
            MyBase.Erinnerungsdatum = value
        End Set
    End Property
 
    Public Overridable Property Vorname As String
        Get
            Return myVorname
        End Get
        Set(ByVal value As String)
            myVorname = value
        End Set
    End Property
 
    Public Overridable Property Nachname As String
        Get
            Return myNachname
        End Get
        Set(ByVal value As String)
            myNachname = value
        End Set
    End Property
 
End Class
Gruß
Hannibal

_____________________________________________________
Programmieren ist heute ein Wettrennen zwischen Programmierern, die versuchen bessere und idiotensicherere Programme zu entwickeln und dem Universum, dass versucht bessere Idioten zu entwickeln

alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
Problem mit OOP Klassenaufbau1.660Hannibal30.08.12 20:44
Re: Problem mit OOP Klassenaufbau1.070Hannibal30.08.12 22:02
Re: Problem mit OPP Klassenaufbau1.045Micke31.08.12 12:39
Re: Problem mit OPP Klassenaufbau1.025Hannibal31.08.12 19:47
Re: Problem mit OPP Klassenaufbau972Micke01.09.12 12:34
Re: Problem mit OPP Klassenaufbau995Manfred X01.09.12 13:03
Re: Problem mit OOP Klassenaufbau978Hannibal05.09.12 08:55

Sie sind nicht angemeldet!
Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.

Einloggen  |  Neu registrieren

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

Copyright ©2000-2024 vb@rchiv Dieter Otter
Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.

Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel