public void Einparken(Fahrzeug fahrzeug)
 {
     if (fahrzeugListe != null)
     {
         fahrzeugListe.Add(fahrzeug);
     }
 }
 //Als Alternative zum IClonable-Interface kann auch ein Kopierkonstruktor geschrieben werden
 public Fahrzeug(Fahrzeug fz)
 {
     this.Name  = fz.Name;
     this.Preis = fz.Preis;
     this.MaxGeschwindigkeit = fz.MaxGeschwindigkeit;
     this.AktGeschwindigkeit = fz.AktGeschwindigkeit;
     this.MotorLäuft         = fz.MotorLäuft;
 }
Exemplo n.º 3
0
 public void Entlade()
 {
     if (this.Ladung != null)
     {
         Console.WriteLine($"Entladevorgang von '{this.Ladung.Name}' erfolgreich.");
         this.Ladung = null;
     }
     else
     {
         Console.WriteLine($"'{this.Name} hat keine Ladung geladen.");
     }
 }
Exemplo n.º 4
0
 public void Belade(Fahrzeug fz)
 {
     if (this.Ladung == null)
     {
         this.Ladung = fz;
         Console.WriteLine($"Ladevorgang von '{fz.Name}' auf '{this.Name}' erfolgreich.");
     }
     else
     {
         Console.WriteLine($"Ladeplatz auf '{this.Name}' bereits durch '{this.Ladung.Name}' belegt.");
     }
 }
Exemplo n.º 5
0
 public void Belade(Fahrzeug fz)
 {
     if (this.Ladung is Fahrzeug)
     {
         Console.WriteLine($"Ladeplatz von {this.Name} schon von {this.Ladung.Name} belegt");
     }
     else
     {
         this.Ladung = fz;
         Console.WriteLine($"{this.Ladung.Name} wurde auf {this.Name} geladen.");
     }
 }
Exemplo n.º 6
0
 public void Entlade()
 {
     if (this.Ladung != null)
     {
         Console.WriteLine($"{this.Ladung.Name} wurde von {this.Name} entladen.");
         this.Ladung = null;
     }
     else
     {
         Console.WriteLine($"{this.Name} hat keine Ladung, die entladen werden könnte.");
     }
 }
Exemplo n.º 7
0
 public void Belade(Fahrzeug fz1)
 {
     if (this.Ladung == null)
     {
         this.Ladung = fz1;
         Console.WriteLine($"{this.Ladung.Name} wurde auf {this.Name} geladen.");
     }
     else
     {
         Console.WriteLine($"{this.Name} hat bereits {this.Ladung.Name} geladen.");
     }
 }
Exemplo n.º 8
0
        public Fahrzeug Entlade()
        {
            if (this.Ladung != null)
            {
                Fahrzeug fz = this.Ladung;
                this.Ladung = null;
                Console.WriteLine($"Entladevorgang von '{fz.Name}' erfolgreich.");
                return(fz);
            }
            else
            {
                Console.WriteLine($"'{this.Name} hat keine Ladung geladen.");
            }

            return(null);
        }
Exemplo n.º 9
0
 public void Belade(Fahrzeug fz)
 {
     if (this.Equals(fz))
     {
         Console.WriteLine("Das Fahrzeug kann sich nicht selber transportieren.");
     }
     else if (this.Ladung == null)
     {
         this.Ladung = fz;
         Console.WriteLine($"Ladevorgang von '{fz.Name}' auf '{this.Name}' erfolgreich.");
     }
     else
     {
         Console.WriteLine($"Ladeplatz auf '{this.Name}' bereits durch '{this.Ladung.Name}' belegt.");
     }
 }
Exemplo n.º 10
0
        //Methode zum Laden einer 'Fahrzeug'-Datei und Rückgabe der Fahrezuge an den Aufrufer (vgl. auch SpeichernUndLaden.LadeString())
        public static List <Fahrzeug> LadeFz(string path = "gespeicherteFahrzeuge.fz")
        {
            StreamReader reader = null;

            //Mittels der TypeNameHandling-Property des JsonSerializerSettings-Objekts kann dem Serialisierer aufgegeben werden, dass er den expliziten Objekt-Type der
            //zu ladenden/speichernden Objekte mit abspeichert
            JsonSerializerSettings setting = new JsonSerializerSettings();

            setting.TypeNameHandling = TypeNameHandling.Objects;

            //Liste, in welche die geladenen Fahrzeuge geschrieben werden
            List <Fahrzeug> geladeneFahrzeuge = new List <Fahrzeug>();

            try
            {
                reader = new StreamReader(path);

                while (!reader.EndOfStream)
                {
                    //Auslesen einer Zeile der Datei
                    string aktuellesFahrzeugAlsString = reader.ReadLine();
                    //Umwandlung der Textzeile in ein Fahrzeug (Beachte die Übergabe des Settings-Objekts)
                    Fahrzeug aktuellesGeladenesFahrzeug = JsonConvert.DeserializeObject <Fahrzeug>(aktuellesFahrzeugAlsString, setting);
                    //Hinzufügen des Fahrzeugs zur Liste
                    geladeneFahrzeuge.Add(aktuellesGeladenesFahrzeug);
                }

                Console.WriteLine("Fahrzeuge erfolgreich geladen");
            }
            catch
            {
                Console.WriteLine("Laden fehlgeschlagen");
            }
            finally
            {
                if (reader != null)
                {
                    reader.Close();
                }
            }

            //Rückgabe der Liste an den Aufrufer
            return(geladeneFahrzeuge);
        }