Galileo Computing < openbook > Galileo Computing - Professionelle Bücher. Auch für Einsteiger.
Professionelle Bücher. Auch für Einsteiger.

Inhaltsverzeichnis
1 Einführung
2 Grundlagen
3 Fehlerbehandlung
4 Erweiterte Grundlagen
5 Objektorientierte Programmierung
6 Wichtige Klassen in .NET
7 Weitere Elemente eines Windows-Programms
8 Datenbank-Anwendungen mit ADO.NET
9 Internet-Anwendungen mit ASP.NET
10 Zeichnen mit GDI+
11 Beispielprojekte
A Installation und technische Hinweise
B Lösungen der Übungsaufgaben
Stichwort

Download:
- ZIP, ca. 7,8 MB
Buch bestellen
Ihre Meinung?

Spacer
<< zurück
Einstieg in Visual Basic 2010 von Thomas Theis
Inkl. Visual Studio Express Editions
Buch: Einstieg in Visual Basic 2010

Einstieg in Visual Basic 2010
2., akt. und erw. Aufl., Klappbroschur, mit DVD
467 S., 24,90 Euro
Galileo Computing
ISBN 978-3-8362-1541-1
Pfeil 5 Objektorientierte Programmierung
Pfeil 5.1 Was ist Objektorientierung?
Pfeil 5.2 Klasse, Eigenschaft, Methode, Objekt
Pfeil 5.2.1 Objektverweis und Instanz
Pfeil 5.3 Eigenschaftsmethode
Pfeil 5.4 Konstruktor
Pfeil 5.5 Referenzen und Werte
Pfeil 5.5.1 Objekte vergleichen
Pfeil 5.6 Statische Elemente
Pfeil 5.7 Vererbung
Pfeil 5.8 Konstruktoren bei Vererbung
Pfeil 5.9 Polymorphie
Pfeil 5.10 Schnittstellen
Pfeil 5.10.1 Vorhandene Schnittstellen


Galileo Computing - Zum Seitenanfang

5.3 Eigenschaftsmethode topZur vorigen Überschrift

Kontrolle

Eigenschaftsmethoden (Properties) ermöglichen einen verbesserten Schutz von Klassen-Eigenschaften und eine weitergehende Kontrolle bei den Veränderungen der Eigenschaften. Um dies zu verdeutlichen, wurde die Klasse Fahrzeug im folgenden Programm (Projekt Eigenschaftsmethode) verändert.

Zunächst die neue Klassendefinition:

Public Class Fahrzeug
    Dim geschwindigkeit As Integer

    Property PGeschwindigkeit() As Integer
        Get
            Return geschwindigkeit
        End Get
        Private Set(ByVal value As Integer)
            If value > 100 Then
                geschwindigkeit = 100
            ElseIf value < 0 Then
                geschwindigkeit = 0
            Else
                geschwindigkeit = value
            End If
        End Set
    End Property

    Sub beschleunigen(ByVal wert As Integer)
        PGeschwindigkeit += wert
    End Sub
End Class

Listing 5.4 Projekt »Eigenschaftsmethode«, Definition der Klasse

Zur Erläuterung:

  • Es gibt nach wie vor die geschützte Eigenschaft geschwindigkeit.

Property

  • Zu dieser Eigenschaft wurde die Eigenschaftsmethode (Property) PGeschwindigkeit() hinzugefügt.

Get, Set

  • Eigenschaftsmethoden werden mit dem Schlüsselwort Property eingeleitet und sind zunächst öffentlich. Sie bestehen aus sogenannten Accessoren, einem Get-Accessor und einem Set-Accessor. Der Get-Accessor ist verantwortlich für das Lesen der Eigenschaft geschwindigkeit. Der Set-Accessor ist verantwortlich für das Schreiben in die Eigenschaft geschwindigkeit.

Gültigkeitsbereich

  • Die Accessoren Get und Set sind öffentlich, wenn die Eigenschaftsmethode öffentlich ist. In diesem Fall können Sie aber einen der beiden Accessoren kapseln. Die Accessoren sind gekapselt, wenn die gesamte Eigenschaftsmethode gekapselt ist.
  • Im vorliegenden Programm wurde der Set-Accessor mit Private gekapselt. Die Eigenschaft geschwindigkeit soll also nach wie vor nur über die öffentliche Methode beschleunigen() verändert werden können.
  • Im Set-Accessor wird durch eine Verzweigung dafür gesorgt, dass der Wert der Eigenschaft geschwindigkeit nicht kleiner als 0 und nicht größer als 100 werden darf (eine Geschwindigkeitsbegrenzung). Eine solche Kontrolle ist einer der Einsatzzwecke einer Eigenschaftsmethode.
  • In der Methode beschleunigen() wird der gelieferte Wert zu der Eigenschaftsmethode hinzuaddiert. Auf diese Weise wird dafür gesorgt, dass sich auch bei Aufruf der Methode beschleunigen() der Wert der Eigenschaft geschwindigkeit nur innerhalb der erlaubten Grenzen bewegt.

Es folgt das Programm, in dem die veränderte Klasse benutzt wird:

Public Class Form1
    Private Sub cmdAnzeigen_Click(...) Handles ...
        Dim vespa As New Fahrzeug
        lblAnzeige.Text = vespa.PGeschwindigkeit
        vespa.beschleunigen(120)
        ' vespa.PGeschwindigkeit = 50
        lblAnzeige.Text &= vbCrLf &
            vespa.PGeschwindigkeit
    End Sub
End Class

Listing 5.5 Projekt »Eigenschaftsmethode«, Benutzung der Klasse

Zur Erläuterung:

  • Zur Ausgabe wird der öffentlich zugängliche Get-Accessor PGeschwindigkeit() benutzt.
  • Es wird versucht, das Fahrzeug um 120 zu beschleunigen. Dies gelingt allerdings nicht, da der Set-Accessor PGeschwindigkeit() dies verhindert, siehe Abbildung 5.3.

Abbildung 5.3 Kontrolle durch Eigenschaftsmethode

  • In der vorletzten Zeile steht (auskommentiert) eine Anweisung, die nicht durchgeführt werden kann. Der Set-Accessor PGeschwindigkeit() ist gekapselt, daher führt die Anweisung vespa.PGeschwindigkeit = 50 zu einem Fehler.


Ihr Kommentar

Wie hat Ihnen das <openbook> gefallen? Wir freuen uns immer über Ihre freundlichen und kritischen Rückmeldungen.






<< zurück
  Zum Katalog
Zum Katalog: Einstieg in Visual Basic 2010

Einstieg in Visual Basic 2010
Jetzt bestellen


 Ihre Meinung?
Wie hat Ihnen das <openbook> gefallen?
Ihre Meinung

 Buchempfehlungen
Zum Katalog: Visual Basic 2010






 Visual Basic 2010


Zum Katalog: Windows Presentation Foundation






 Windows Presentation
 Foundation


Zum Katalog: Silverlight 4






 Silverlight 4


Zum Katalog: Einstieg in Visual C# 2010






 Einstieg in
 Visual C# 2010


Zum Katalog: Visual C# 2010






 Visual C# 2010


Zum Katalog: Einstieg in PHP 5.3 und MySQL 5.4






 Einstieg in PHP 5.3
 und MySQL 5.4


Zum Katalog: PHP 5.3 und MySQL 5.4






 PHP 5.3 und
 MySQL 5.4


 Shopping
Versandkostenfrei bestellen in Deutschland und Österreich
InfoInfo




Copyright © Galileo Press 2010
Für Ihren privaten Gebrauch dürfen Sie die Online-Version natürlich ausdrucken. Ansonsten unterliegt das <openbook> denselben Bestimmungen, wie die gebundene Ausgabe: Das Werk einschließlich aller seiner Teile ist urheberrechtlich geschützt. Alle Rechte vorbehalten einschließlich der Vervielfältigung, Übersetzung, Mikroverfilmung sowie Einspeicherung und Verarbeitung in elektronischen Systemen.


[Galileo Computing]

Galileo Press, Rheinwerkallee 4, 53227 Bonn, Tel.: 0228.42150.0, Fax 0228.42150.77, info@galileo-press.de