Menu
Coddy logo textTech

Universitäts-Verwaltungssystem

Teil des Abschnitts Objektorientierte Programmierung der JavaScript-Journey von Coddy — Lektion 55 von 56.

challenge icon

Aufgabe

In dieser Herausforderung haben wir ein Universitätssystem mit verschiedenen Arten von Personen (Studenten, Professoren), die unterschiedliche Rollen und Verhaltensweisen haben.

1. Vervollständige die Klasse Person:

  • Füge die Methode introduce() hinzu, die "Hi, I'm ${name}" zurückgibt

2. Vervollständige die Klasse Student:

  • Überschreibe introduce(), um ${super.introduce()}, a ${this.major} student zurückzugeben. Beispiel: "Hi, I'm Alice, a Computer Science student"
  • Füge die Methode addGrade(grade) hinzu, die eine Note zwischen 0 und 100 entgegennimmt
    • Validierung: Überprüfe, ob die Note zwischen 0 und 100 liegt
    • Wenn gültig: Füge sie dem Array this.grades hinzu
    • Wenn ungültig: Logge: "Grade must be between 0 and 100"

3. Vervollständige die Klasse Professor:

  • Überschreibe introduce(), um “Prof. ${name} from ${department}” zurückzugeben. Beispiel: “Prof. Smith from Computer Science”

Probier es selbst

import { Person } from './person.js';
import { Student } from './student.js';
import { Professor } from './professor.js';

// Personen erstellen
const student1 = new Student('Alice', 20, 'Computer Science');
const prof1 = new Professor('Dr. Johnson', 50, 'Mathematics');

console.log(student1.introduce()); // "Hi, I'm Alice, a Computer Science student"
console.log(prof1.introduce())     // "Prof. Dr. Johnson from Mathematics"

student1.addGrade(85);
student1.addGrade(90);
student1.addGrade(95);
console.log(`${student1.name}'s GPA: ${student1.getGPA()}`); // ~3.6

student1.addGrade(105); // Sollte ausgeben: "Grade must be between 0 and 100"

Alle Lektionen in Objektorientierte Programmierung