Verwendung mehrere Konstruktoren in CSharp
- Home
- Tutorials
- C
- Der Ultimative C# Kurs - Hier wirst Du zum CSharp Pro
- Verwendung mehrere Konstruktoren in CSharp
Dieses Video ist nicht verfügbar
Dieses Video steht nur eingeschriebenen Nutzern zur Verfügung.
Jetzt Kurs kaufenWie bereits im letzten Artikel erwähnt, ermöglicht CSharp die Verwendung mehrere Konstruktoren. Welchen Nutzen bringt das?
Es ist so, dass es manchmal vorkommt, dass man ein Objekt der selben Klasse braucht, welches jedoch nicht unbedingt die gleiche Anzahl an Attributen haben soll. Nehmen wir wieder unser Beispiel Mensch. Es kann ja sein, dass wir nicht wollen, dass jeder Mensch alle Infos über sich angeben muss. Vielleicht reichen uns ja der Name und Nachname. Vielleicht brauchen wir noch das Alter dazu. Je nachdem wie wir unser Programm gestalten möchten, können wir das auch tun.
Beispiel für die Verwendung mehrere Konstruktoren in CSharp
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Panjutorials
{
class Mensch
{
// das sind die Attribute der Klasse Mensch
int alter;
string vorname, nachname, augenfarbe;
// Konstruktor mit 4 Argumenten
public Mensch(string derVorname, string derNachname, int dasAlter, string dieAugenfarbe)
{
vorname = derVorname;
nachname = derNachname;
alter = dasAlter;
augenfarbe = dieAugenfarbe;
}
// Konstruktor mit 3 Argumenten
public Mensch(string derVorname, string derNachname, int dasAlter)
{
vorname = derVorname;
nachname = derNachname;
alter = dasAlter;
}
// Konstruktor mit 2 Argumenten
public Mensch(string derVorname, string derNachname)
{
vorname = derVorname;
nachname = derNachname;
}
// das ist ein Beispiel für eine Aktion
public void sichVorstellen()
{
if(alter != 0 && augenfarbe != null)
{
Console.WriteLine("Ich heiße " + vorname + " " + nachname + " und bin " + alter + " Jahre alt " +
"und meine Augen sind " + augenfarbe + ".");
}
if(augenfarbe == null && alter != 0)
{
Console.WriteLine("Ich heiße " + vorname + " " + nachname + " und bin "
+ alter + " Jahre alt.");
}
if (augenfarbe == null && alter == 0)
{
Console.WriteLine("Ich heiße " + vorname + " " + nachname + ".");
}
}
}
}
Die Mensch Klasse könnte dann so aussehen.
class Program
{
static void Main(string[] args)
{
// Anlegen von Objekten der Klasse Mensch
Mensch denis = new Mensch("Denis", "Panjuta", 28, "Grün");
Mensch michi = new Mensch("Michael", "Müller", 35);
Mensch heidi = new Mensch("Heidi", "Schmidt");
// Aufrufen der Aktionen der Klasse Mensch auf den Objekten der Klasse
denis.sichVorstellen();
michi.sichVorstellen();
heidi.sichVorstellen();
// Ausgeben des Textes auf die Konsole
Console.Read();
}
}
Als Ausgabe erhalten wir:
Ich heiße Denis Panjuta und bin 28 Jahre alt und meine Augen sind Grün.
Ich heiße Michael Müller und bin 35 Jahre alt.
Ich heiße Heidi Schmidt.
Damit siehst du, dass du jede Menge Anpassungsmöglichkeiten hast, was die Erstellung deiner Klassen und entsprechender Objekte angeht.
Der Ultimative C# Kurs - Hier wirst Du zum CSharp Pro
-
So holst du das meiste aus dem Kurs
-
Lektion1.1
-
Lektion1.2
-
Lektion1.3
-
-
Deine erste C# Anwendung und Übersicht zu Visual Studio
-
Lektion2.1
-
Lektion2.2
-
Lektion2.3
-
-
Datentypen und Variablen
-
Lektion3.1
-
Lektion3.2
-
Lektion3.3
-
Lektion3.4
-
Lektion3.5
-
-
Funktionen / Methoden und wie sie einem das Leben vereinfachen
-
Lektion4.1
-
Lektion4.2
-
Lektion4.3
-
Lektion4.4
-
-
Benutzereingabe für unsere Programme verwenden
-
Lektion5.1
-
-
Entscheidungen Treffen
-
Lektion6.1
-
Lektion6.2
-
Lektion6.3
-
Lektion6.4
-
Lektion6.5
-
Lektion6.6
-
Lektion6.7
-
Lektion6.8
-
-
Schleifen (Loops) und wie man etwas automatisiert
-
Lektion7.1
-
Lektion7.2
-
Lektion7.3
-
Lektion7.4
-
Lektion7.5
-
Lektion7.6
-
Lektion7.7
-
-
Objektorientierte Programmierung (OOP) und Klassen
-
Lektion8.1
-
Lektion8.2
-
Lektion8.3
-
Lektion8.4
-
Lektion8.5
-
Lektion8.6
-
Lektion8.7
-
Lektion8.8
-
Lektion8.9
-
Lektion8.10
-
Lektion8.11
-
-
Arrays / Felder
-
Lektion9.1
-
Lektion9.2
-
Lektion9.3
-
Lektion9.4
-
Lektion9.5
-
Lektion9.6
-
-
ArrayList
-
Lektion10.1
-
Lektion10.2
-
Lektion10.3
-
Lektion10.4
-
Lektion10.5
-
-
Vererbung / Inheritance und noch mehr zu OOP
-
Lektion11.1
-
Lektion11.2
-
Lektion11.3
-
Lektion11.4
-
-
Polymorphie und noch mehr zu OOP
-
Lektion12.1
-
Lektion12.2
-
Lektion12.3
-
Lektion12.4
-
Lektion12.5
-
Lektion12.6
-
-
Debugging und Try and Catch
-
Lektion13.1
-
Lektion13.2
-
-
Mit Dateien Arbeiten
-
Lektion14.1
-
Lektion14.2
-
Lektion14.3
-