-
12.03.2015, 00:13 #1
Abstrakte Klasse mit Konstruktor - Alternative?
Hallo,
ich habe eine abstrakte Klasse, von der ein paar andere Klassen erben. Diese abstrakte Klasse soll einen Konstruktor haben, der bei jeder Klasse die davon erbt auch aufgerufen wird.
Vereinfacht sollte das so aussehen:
public abstract class Person
{
private string name;
public Person(string personName)
{
name = personName;
}
public string Name
{
get
{
return name;
}
}
public string Age {get;set;}
}
public class Student : Person
{
}
Ziel der Sache ist, dass ich die Klasse "Student" nun mit dem Konstruktor von "Person" aufrufen kann, also so:
Student max = new Student("Max");
Ich habe in der msdn auf https://msdn.microsoft.com/de-de/library/ms182126.aspx gelesen, dass das so nicht erlaubt ist.
Die Alternative wäre, dass ich das Attribute in jeder meiner erbenden Klassen einbinde, also
public abstract class Person
{
public string Age {get;set;}
}
public class Student : Person
{
private string name;
public Student(string studentName)
{
name = studentName;
}
public string Name
{
get
{
return name;
}
}
}
Dann muss ich das aber in jeder erbenden Klasse einbinden, das finde ich lästig und fehleranfällig. Gibt es echt keinen anderen Weg wie man das lösen kann?
Ich möchte halt dass eine Funktion der abstrakten Klasse bei jeder Klasse die davon erbt im Konstruktor aufgerufen wird, und zwar möglichst automatisch.
Vielleicht ist hier ein Guru der weiß was zu tun ist
-
12.03.2015, 00:35 #2
- Registriert seit
- 26.10.2011
- Beiträge
- 1.196
- Blog Entries
- 2
Thanked 1.598 Times in 726 PostsAW: Abstrakte Klasse mit Konstruktor - Alternative?
Auf der von dir verlinkten MSDN-Seite steht doch leidiglich das öffentliche Konstrukte nicht vererbt werden können, aber geschüzte schon. Statt Public also protected nutzen.
Müsstest du wie folgt lösen:
public class Student : Person
{
public Student(string personName) : base(personName) {}
}
Siehe https://msdn.microsoft.com/de-de/lib...=vs.90%29.aspx (runterscrollen! Das msdn hat nicht mal Anchor-Links, sodass man wirklich scrollen muss und keine Bereiche verlinken kann, super MSDN!)Geändert von patlux (13.03.2015 um 22:50 Uhr)
Ähnliche Themen
-
Nosgoth - Free2Play, Neue Klasse uns Co
Von SphinxDOPE im Forum Gaming-NewsAntworten: 5Letzter Beitrag: 16.03.2015, 23:24 -
[Java] Kleine Klasse für Polynome
Von Mr. White im Forum JavaAntworten: 0Letzter Beitrag: 26.06.2013, 15:13 -
PHP MYSQL Datenbank Klasse statisch
Von Minecraft im Forum PHPAntworten: 1Letzter Beitrag: 11.01.2013, 09:58 -
C# Klasse um E-Mails zu senden
Von The Don of NYC im Forum .NetAntworten: 1Letzter Beitrag: 10.08.2012, 16:53 -
[Frage] Klasse wiederholen
Von iBlack im Forum BildungAntworten: 9Letzter Beitrag: 28.05.2012, 15:25
Diese Seite nutzt Cookies, um das Nutzererlebnis zu verbessern. Klicken Sie hier, um das Cookie-Tracking zu deaktivieren.