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.6 Statische Elemente topZur vorigen Überschrift

Bisher haben wir nur Eigenschaften kennengelernt, die bestimmten Objekten zugeordnet sind, und Methoden, die für ein bestimmtes Objekt ausgeführt werden. Darüber hinaus gibt es aber auch klassenbezogene Eigenschaften und Methoden:

Statische Eigenschaften

  • Klassenbezogene Eigenschaften, sogenannte statische Eigenschaften, sind thematisch mit der Klasse verbunden. Ihre Werte stehen allen Objekten der Klasse zur Verfügung. Falls sie öffentlich deklariert werden, stehen sie auch außerhalb der Klasse zur Verfügung.

Statische Methoden

  • Klassenbezogene Methoden, sogenannte statische Methoden, sind ebenfalls thematisch mit der Klasse verbunden.

Im nachfolgenden Beispiel im Projekt StatischeElemente werden zwei statische Eigenschaften genutzt, eine ist in der Klasse gekapselt, die andere öffentlich. Außerdem kommt noch eine statische Methode zum Einsatz. Zunächst die Klassendefinition:

Public Class Zahl
    Dim wert As Double
    Dim nummer As Integer
    Shared anzahl As Integer = 0
    Public Shared pi As Double = 3.1415926

    Sub New(ByVal x As Double)
        anzahl += 1
        nummer = anzahl
        wert = x
    End Sub

    Sub maldrei()
        wert = wert * 3
    End Sub

    Shared Function verdoppeln(
            ByVal x As Double) As Double
        verdoppeln = x * 2
    End Function

    Function ausgabe() As String
        ausgabe = "Objekt Nr. " & nummer &
            ", Wert: " & wert
    End Function
End Class

Listing 5.12 Projekt »StatischeElemente«, Klassendefinition

Zur Erläuterung:

  • Es wurde die Klasse Zahl definiert, mit deren Hilfe einige einfache Zahlenoperationen ausgeführt werden sollen.
  • Die beiden Variablen wert und nummer sind objektbezogene Eigenschaften. Jedes Objekt hat also seinen eigenen Wert und seine eigene laufende Nummer.

Shared

  • Die Variable anzahl ist eine klassenbezogene und gekapselte Eigenschaft. Diese statische Eigenschaft gibt es insgesamt nur einmal, unabhängig von der Anzahl der erzeugten Objekte. Sie steht innerhalb der Klasse allen Objekten gemeinsam zur Verfügung, sie wird also von den Objekten gemeinsam genutzt bzw. »geshared«. Das Schlüsselwort Shared kennzeichnet die Variable als eine statische Eigenschaft.
  • Innerhalb des Konstruktors der Klasse wird die statische Eigenschaft anzahl bei jeder Erzeugung eines Objekts um 1 erhöht. Diese Eigenschaft repräsentiert also die Anzahl der Objekte. Darüber hinaus wird sie genutzt, um jedem Objekt bei seiner Erzeugung eine individuelle, laufende Nummer zu geben.
  • Die Variable pi ist eine klassenbezogene und öffentliche Eigenschaft. Sie ist ebenfalls einmalig, steht aber nicht nur innerhalb, sondern auch außerhalb der Klasse zur Verfügung. Sie ist aber thematisch mit der Klasse Zahl verbunden, daher wird sie in der Klasse deklariert.
  • Die Prozedur maldrei() ist eine objektbezogene Methode. Sie kann auf ein Objekt angewendet werden und verändert dieses Objekt gegebenenfalls.
  • Die Funktion verdoppeln() ist eine klassenbezogene Methode. Sie wird nicht auf ein individuelles Objekt angewendet. Sie ist aber thematisch mit der Klasse Zahl verbunden und wird daher in der Klasse definiert. Innerhalb der Methode steht keine objektbezogene Eigenschaft (wie wert oder nummer) zur Verfügung.

Im folgenden Programm im Projekt StatischeElemente werden alle genannten statischen Elemente genutzt, siehe Abbildung 5.7.

Public Class Form1
    Private Sub cmdAnzeigen_Click(...) Handles ...
        Dim x As New Zahl(2.5)
        Dim p As New Zahl(-5)
        Dim y, r As Double

        ' Objektbezogene Methoden
        x.maldrei()
        lblAnzeige.Text = x.ausgabe() & vbCrLf &
            p.ausgabe()

        ' Klassenbezogene Methode
        y = 4
        lblAnzeige.Text &= vbCrLf & "Zahl: " & y &
            vbCrLf & "Nach Verdopplung: " &
            Zahl.verdoppeln(y)

        ' Klassenbezogene und öffentl. Eigenschaft
        r = 6
        lblAnzeige.Text &= vbCrLf & "Radius: " & r &
            vbCrLf & "Fläche: " & r * r * Zahl.pi
    End Sub
End Class

Listing 5.13 Projekt »StatischeElemente«, Hauptprogramm

Abbildung 5.7 Statische Elemente

Zur Erläuterung:

  • Es werden die beiden Objekte x und p der Klasse Zahl erzeugt. Dabei wird jeweils der Konstruktor durchlaufen, die Objekte erhalten ihre Startwerte sowie eine laufende Nummer.
  • Auf das Objekt x wird eine objektbezogene Methode angewendet. Anschließend werden beide Objekte mit ihren Eigenschaften ausgegeben.
  • Die statische Methode verdoppeln() wird auf eine Double-Variable angewendet.
  • Die statische und öffentliche Eigenschaft pi der Klasse wird genutzt, um aus dem Radius eines Kreises die Fläche zu berechnen.


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