Als Zusatz zu den bisherigen Antworten: Bei dieser Übung geht es um ein paar grundlegende Begriffe. Da bitte immer genau überlegen: Ist bekannt, was es ist? Was ist eine abstrakte Klasse? Also nicht nur einfach eine abstrakte Klasse wie gefordert erstellen sondern auch verinnerlichen, was dies bedeutet.
Teilweise ist es ja in der Aufgabe eingearbeitet aber da dies absolute Grundlagen sind kann ich nur empfehlen, dies ggf. deutlich intensiver durchzugehen und dies dann auch die nächsten Tage etwas zu wiederholen - Wiederholung hilft, damit etwas besser "sitzt". Und das am Besten auch mit Praxis - also auch mal etwas mit Code spielen und die Aussagen, die getroffen wurden, verifizieren.
Beispiel: Wenn es um die Zugriffsrechte geht, dann kann man mal mehrere Klassen machen package1 mit Klassen A, B und C wobei B von A erbt und dann noch package2 mit Klasse D. Und dann macht man in A Instanzvariablen mit den möglichen Zugriffsrechten und schaut, wo man auf welche Variablen zugreifen kann und wo nicht. Das muss nicht helfen um etwas zu verinnerlichen, aber sowas kann durchaus helfen. (Siehe z.B.
Daher - diese Grundlagen möglichst gut verinnerlichen - denn darauf baut später fast alles auf!