2016-05-18 12 views
0

ich eine Online-Teach-yourself-C# Website testen mein Wissen über inhereitence und dieser Übung verwende ich kann nicht zu lösen scheinen:Ärger eine Basisklasse aufrufen und im richtigen Basis Konstruktor Parameter

Frage:

  1. Erstellen Sie einen Konstruktor auf dem Basistyp Atom, der eine Ganzzahl namens Protonen und eine ganze Zahl Elektronen akzeptiert. Der Konstruktor sollte die Werte auf die zugehörigen Eigenschaften Protonen und Elektronen setzen.
  2. Implementieren eines Hydrogen-Typ abgeleitet, die von Atom erbt und liefert die richtigen Argumente für Protonen und Elektronen an die Basiskonstruktor.

Hier ist der Code, der Übung, die Sie mit beginnt:

public class Atom 
{ 
    public int Protons { get; set; } 

    public int Electrons { get; set; } 
} 

public class Program 
{ 
    public static void Main() 
    { 

    } 
} 

meine Lösung Code Hier ist, wird es keine Compiler-Fehler, aber die Website sagt mir, es zu lösen Frage # 2 tut:

public class Atom 
{ 
    public Atom (int protons, int electrons) 
    { 
     Protons = protons; 
     Electrons = electrons; 
    } 

    public int Protons { get; set; } 
    public int Electrons { get; set; } 

} 

public class Hydrogen : Atom 
{ 
    public Hydrogen() : base(1,1) { } 

} 

public class Program 
{ 
    public static void Main() 
    { 
     Hydrogen hydrogen = new Hydrogen(); 
    } 
} 

Der Code kompiliert in Ordnung, aber die Website heißt es, dass ich nicht die Übung abgeschlossen haben, wie folgt:

Nicht alle Anforderungen erfüllt wurden.

Sie müssen die Basisklasse aufrufen, in der richtigen Anzahl von Protonen und Elektronen vorbei.

+2

Es sieht alles gut für mich aus. Niemand hier kann Ihnen sagen, warum die Website nicht mit Ihrem Code zufrieden ist. Alles, was wir anbieten können, sind Meinungen und Vermutungen. Sie müssten den Autor der Website selbst fragen. –

+0

Ist Webseite glücklich, wenn Sie Ctor als 'öffentlicher Wasserstoff (int Protonen, int Elektronen) definieren: Basis (Protonen, Elektronen) {}' und erstellen Objekt als 'neuer Wasserstoff (1, 1);'? – niksofteng

+0

Ich habe das auch probiert (so stolz habe ich daran gedacht, da ihr Profis das auch gemacht habt =)). Es kompiliert, aber die Website sagt, dass ich einen parameterlosen Konstruktor verwenden muss. Es ist jedoch Funktionscode für praktische Zwecke. –

Antwort

1

Ihr Code-Parser ist fehlerhaft. Fügen Sie einfach ein Leerzeichen zwischen den Basis-Contractor-Parametern hinzu.

Verwenden Basis (1, 1) anstelle der Base (1,1). Es wird den Fehler beheben.

+0

Das hat funktioniert! Wie um alles in der Welt wusstest du das? !! –

+0

Da der Code in Ordnung war, habe ich verschiedene Dinge auf dieser Website ausprobiert. Das hat funktioniert. –

Verwandte Themen