Informatik Klassen - was ist hier falsch?

1 Antwort

Vom Fragesteller als hilfreich ausgezeichnet

Diese extrem kategorische Einteilung ("immer") lässt mich etwas an der Kompetenz der Fragesteller zweifeln. Oder es fehlt hier Kontext, den wir auf dem Screenshot nicht sehen, wir wissen ja nichtmal, ob es um eine bestimmte Sprache geht. Somit kann man nur ein bisschen raten.

Attribute einer Klasse sind keineswegs immer private, da sind alle Varianten möglich und auch sinnvoll. Erzwingt man aber die Verwendung von Gettern und Settern, ist "immer private" richtig.

Konstruktoren sind public außer in Spezialfällen (z.B. wenn man die Instanziierung der Klasse bewusst verhindern will, wofür es gute Beispiele gibt).

Getter und Setter sind in aller Regel public, müssen es aber nicht sein, etwa wenn man Setter bewusst einschränken will.

Hilfsmethoden sind in aller Regel private. Natürlich könnte es legitime Fälle geben, in denen eine etwas gelockerte Sichtbarkeit gewünscht ist, etwa für Unit-Tests.

Die restlichen Methoden sind dann normalerweise public.

GuterFragerHier 
Fragesteller
 17.11.2023, 15:29

Mein Fehler - habe vergessen Java dazuzuschreiben. Mehr Kontext als das habe ich aber selbst nicht. Wie du schon sagst, ich finde solche Aufgaben total bescheuert. Es gibt so viele Möglichkeiten, die Sinn ergeben würden. Der Unterschied zwischen "Normalerweise public" und "Public (außer in Spezialfällen)" ist aber auch wirklich etwas schwachsinnig.

Danke trotzdem für die Antwort. Ich werde den Lehrer mal darauf ansprechen.

0