Rheinwerk Computing < openbook > Rheinwerk 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
12 Windows Presentation Foundation
13 Windows Store-Apps für Windows 8
A Installation und technische Hinweise
B Lösungen der Übungsaufgaben
C Inhalt der Buch-DVD
D Der Autor
Stichwort

Buch bestellen
Ihre Meinung?

Spacer
Einstieg in Visual Basic 2012 von Thomas Theis
Ideal für Programmiereinsteiger geeignet
Buch: Einstieg in Visual Basic 2012

Einstieg in Visual Basic 2012
Rheinwerk Computing
579 S., 3., aktualisierte und erweiterte Auflage 2013, brosch., mit DVD
24,90 Euro, ISBN 978-3-8362-1959-4
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, Vergleiche und Typen
Pfeil 5.5.1 Objekte vergleichen
Pfeil 5.5.2 Typ eines Objekts ermitteln
Pfeil 5.5.3 Typ eines Objekts durch Vergleich ermitteln
Pfeil 5.6 Delegates
Pfeil 5.7 Statische Elemente
Pfeil 5.8 Vererbung
Pfeil 5.9 Konstruktoren bei Vererbung
Pfeil 5.10 Polymorphie
Pfeil 5.11 Schnittstellen
Pfeil 5.11.1 Vorhandene Schnittstellen

Rheinwerk Computing - Zum Seitenanfang

5.4 Konstruktor

Konstruktoren dienen dazu, Objekte bei ihrer Erzeugung mit Werten zu versehen. Es kann pro Klasse mehrere Konstruktoren geben, wenn Sie es dem Benutzer der Klasse ermöglichen möchten, seine Objekte auf verschiedene Art und Weise zu erzeugen.

Ein Konstruktor wird in der Klasse wie eine Methode vereinbart. Er hat immer den Namen New. Im nachfolgenden Beispiel (Projekt Konstruktor) wurde die Klasse Fahrzeug wiederum verändert, mit dem besonderen Augenmerk auf Konstruktoren.

Zunächst die Klasse:

Public Class Fahrzeug
Dim bezeichnung As String
Dim geschwindigkeit As Integer

Sub New()
bezeichnung = "(leer)"
geschwindigkeit = 0
End Sub

Sub New(b As String)
bezeichnung = b
geschwindigkeit = 0
End Sub

Sub New(g As Integer)
bezeichnung = "(leer)"
geschwindigkeit = g
End Sub

Sub New(b As String, g As Integer)
bezeichnung = b
geschwindigkeit = g
End Sub

Function ausgabe() As String
ausgabe = "Bezeichnung: " & bezeichnung &
vbCrLf & "Geschwindigkeit: " &
geschwindigkeit & vbCrLf
End Function

Sub beschleunigen(wert As Integer)
geschwindigkeit += wert
End Sub
End Class

Listing 5.6 Projekt »Konstruktor«, Definition der Klasse

Zur Erläuterung:

  • Fahrzeuge haben nun zwei Eigenschaften: eine Bezeichnung (mit dem Datentyp String) und eine Geschwindigkeit (mit dem Datentyp Integer).
  • Es sind vier Konstruktormethoden vereinbart, diese unterscheiden sich nicht durch ihren Namen (New), aber durch Anzahl und Datentyp der Parameter. Durch diese Unterscheidung kann das Programm bei der Objekterzeugung erkennen, welche der vier Konstruktormethoden verwendet werden soll.
  • Man bezeichnet dies als Methodenüberladung. Außer der Konstruktormethode können auch andere Methoden auf diese Weise überladen werden. Dies ist eine häufige Vorgehensweise: Man macht etwas mit dem Objekt, sendet dabei bestimmte Daten und das Objekt weiß aufgrund der Klassendefinition und der verschiedenen Methodendefinitionen, wie es mit den Daten verfahren soll.
  • Der erste Konstruktor erwartet keine Parameter. Die beiden Eigenschaften werden mit (leer) und 0 vorbesetzt.
  • Der zweite Konstruktor erwartet eine Zeichenkette. Diese wird der Bezeichnung zugewiesen. Die Geschwindigkeit wird mit 0 vorbesetzt.
  • Analog dazu erwartet der dritte Konstruktor eine Integer-Zahl. Diese wird der Geschwindigkeit zugewiesen. Die Bezeichnung wird mit (leer) vorbesetzt.
  • Im vierten Konstruktor, der eine Zeichenkette und eine Integer-Zahl erwartet, werden beide Eigenschaften mit den gewünschten Werten vorbesetzt.
  • Mithilfe der Ausgabemethode werden beide Eigenschaften kommentiert ausgegeben.

Das Programm (Projekt Konstruktor) kann diese Klasse jetzt wie folgt nutzen:

Public Class Form1
Private Sub cmdAnzeigen_Click(...) Handles ...
Dim vespa As New Fahrzeug
Dim schwalbe As New Fahrzeug("Moped")
Dim yamaha As New Fahrzeug(50)
Dim honda As New Fahrzeug("Motorrad", 75)
lblAnzeige.Text = vespa.ausgabe() & vbCrLf &
schwalbe.ausgabe() & vbCrLf &
yamaha.ausgabe() & vbCrLf &
honda.ausgabe()
End Sub
End Class

Listing 5.7 Projekt »Konstruktor«, Benutzung der Klasse

Zur Erläuterung:

  • Es werden vier Objekte der Klasse Fahrzeug erzeugt und ausgegeben, siehe Abbildung 5.4. Jedes der Objekte nutzt einen anderen Konstruktor.
  • Während der Codierung erscheint nach Eingabe von New Fahrzeug ein IntelliSense-QuickInfo. Darin werden dem Entwickler die vier Möglichkeiten zur Objekterzeugung, also die vier Konstruktoren mit Anzahl und Typ der Parameter, zur Auswahl angeboten. Dieses Verhalten kennen wir schon von der Benutzung der vordefinierten Methoden.
  • Sobald eigene Konstruktoren definiert sind, können nur noch diese genutzt werden. Falls es keine eigenen Konstruktoren gibt, wird ein interner, parameterloser Konstruktor verwendet, wie im ersten Beispiel dieses Abschnitts.
  • Bei der Nutzung des eigenen, parameterlosen Konstruktors (siehe Objekt vespa) werden gar keine Klammern hinter dem Namen der Klasse angegeben.

Abbildung

Abbildung 5.4 Vier Objekte nach der Konstruktion



Ihr Kommentar

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

>> Zum Feedback-Formular
<< zurück
  Zum Katalog
Zum Katalog: Einstieg in Visual Basic 2012

Einstieg in Visual Basic 2012
Jetzt bestellen


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

 Buchempfehlungen
Zum Katalog: Visual Basic 2012






 Visual Basic 2012


Zum Katalog: Schrödinger programmiert C++






 Schrödinger
 programmiert C++


Zum Katalog: IT-Handbuch für Fachinformatiker






 IT-Handbuch für
 Fachinformatiker


Zum Katalog: Java ist auch eine Insel






 Java ist auch
 eine Insel


Zum Katalog: Einstieg in Python






 Einstieg in Python


 Shopping
Versandkostenfrei bestellen in Deutschland und Österreich
InfoInfo





Copyright © Rheinwerk Verlag GmbH 2013
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.


[Rheinwerk Computing]

Rheinwerk Verlag GmbH, Rheinwerkallee 4, 53227 Bonn, Tel.: 0228.42150.0, Fax 0228.42150.77, service@rheinwerk-verlag.de