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 Neues in Visual Basic 2008
12 Beispielprojekte
A Installation
B Lösungen der Übungsaufgaben
Stichwort

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

Spacer
 <<   zurück
Einstieg in Visual Basic 2008 von Thomas Theis
Inkl. zahlreicher Beispiele und Uebungen
Buch: Einstieg in Visual Basic 2008

Einstieg in Visual Basic 2008
geb., mit DVD
442 S., 24,90 Euro
Galileo Computing
ISBN 978-3-8362-1192-5
Online bestellenJetzt online bestellen
* versandkostenfrei in (D) und (A)
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 Delegates
  Pfeil 5.8 Ereignisse
  Pfeil 5.9 Namespaces
  Pfeil 5.10 Vererbung
  Pfeil 5.11 Konstruktoren bei Vererbung
  Pfeil 5.12 Polymorphie
  Pfeil 5.13 Schnittstellen


Galileo Computing - Zum Seitenanfang

5.4 Konstruktor  topZur vorigen Überschrift

Objekterzeugung

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

New

Ein Konstruktor wird in der Klasse wie eine Methode vereinbart. Er hat immer den Namen New. Im nachfolgenden Beispiel 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(ByVal b As String) 
      bezeichnung = b 
      geschwindigkeit = 0 
   End Sub 
 
   Sub New(ByVal g As Integer) 
      bezeichnung = "(leer)" 
      geschwindigkeit = g 
   End Sub 
 
   Sub New(ByVal b As String, ByVal g As Integer) 
      bezeichnung = b 
      geschwindigkeit = g 
   End Sub 
 
 
   Function ausgabe() As String 
      ausgabe = "Bezeichnung: " & bezeichnung _ 
         & vbCrLf & "Geschwindigkeit: " _ 
         & geschwindigkeit & vbCrLf 
   End Function 
 
   Sub beschleunigen(ByVal wert As Integer) 
      geschwindigkeit += wert 
   End Sub 
End Class

Zur Erläuterung:

  • Fahrzeuge haben nun zwei Eigenschaften: eine Bezeichnung (mit dem Datentyp String) und eine Geschwindigkeit (mit dem Datentyp Integer).

    Mehrere Konstruktoren

  • Es sind vier Konstruktor-Methoden 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 Konstruktor-Methoden verwendet werden soll.

    Überladung

  • Man bezeichnet dies als Methoden-Überladung. Außer der Konstruktor-Methode 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 Klassen-Definition und der verschiedenen Methoden-Definitionen, 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 Ausgabe-Methode werden beide Eigenschaften kommentiert ausgegeben.

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

Public Class frm0503 
   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

Abbildung 5.4  Vier Objekte nach ihrer Konstruktion

Zur Erläuterung:

  • Es werden vier Objekte der Klasse Fahrzeug erzeugt. Jedes der Objekte nutzt einen anderen Konstruktor.

    IntelliSense

  • Während der Codierung erscheint nach Eingabe des Klassennamens (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.


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 2008






Einstieg in Visual Basic 2008
bestellen
 Ihre Meinung?
Wie hat Ihnen das <openbook> gefallen?
Ihre Meinung

 Buchtipps
Zum Katalog: Visual Basic 2008






 Visual Basic 2008


Zum Katalog: Einstieg in Visual C++ 2008






 Einstieg in
 Visual C++ 2008


Zum Katalog: Einstieg in Visual C# 2008






 Einstieg in
 Visual C# 2008


Zum Katalog: Visual C# 2008






 Visual C# 2008


Zum Katalog: Visual C# - Video-Training






 Visual C# -
 Video-Training


Zum Katalog: Einstieg in PHP 5 und MySQL 5






 Einstieg in PHP 5
 und MySQL 5


 Shopping
Versandkostenfrei bestellen in Deutschland und Österreich
InfoInfo





Copyright © Galileo Press 2008
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