Protected Classes/Members

Status
Nicht offen für weitere Antworten.

tincup

Bekanntes Mitglied
Hi.

Schreibe grad an ner Bibliothek, die dann mit JavaDoc und vor allem einsichtig und bedienbar ausgeliefert werden soll.
Würde gerne mal eure Meinung zu protected Klassen und Members hören.

Und zwar habe ich ein paar Klassen in den Paketen, welche einfach nicht vom User benutzt werden sollten. Sie sind Hilfsklassen für ein oder zwei "echte" Klassen, hätten mir aber als innere Klassen den Code völlig überfrachtet.
Ähnliches gilt für bestimmte Methoden, die der Benutzer eigentlich nicht aufrufen sollte bzw. ihm nur schwer verständlich zu machen wäre, warum und wie er das tun sollte.

Jetzt ist mir klar, dass protected ja nicht wirklich etwas vor dem Benutzer versteckt, sondern nur im entsprechenden Scope nicht ansprechbar macht.

Wäre jetzt so vorgegangen, dass ich protected members einfach im JavaDoc gar nicht mit exportiert hätte. Beim Betrachten anderer JavaDocs scheint das aber nicht der übliche Weg zu sein, oder?!

Grüsse,
Tin
 

Tobias

Top Contributor
protected muß mit exportiert werden, weil jemand, der zur Erweiterung deiner Bibliothek diese Member überschreiben will, sonst völlig ohne Dokumentation dasteht. Wenn du partout nicht willst, das deine Member überschrieben werden, mach sie nicht protected sondern private oder package-private. Die müssen dann auch nicht dokumentiert sein (ich tu es trotzdem, aber mehr für mich selbst). Vom Standpunkt einer veröffentlichten Bibliothek ist es vielleicht sogar sinnvoll zu sagen, dass private und package-private Member nicht dokumentiert sein sollten, von wegen Kapselung und Information Hiding. Da kann man aber sicher drüber streiten.

mpG
Tobias
 

tincup

Bekanntes Mitglied
Ah mir war nicht mehr bewusst, dass kein Modifier ja auch eine ganz eigene Funktion hat (package-private eben). Wen's noch interessiert:

http://java.sun.com/docs/books/tutorial/java/javaOO/accesscontrol.html

Danke schonmal, hat mir genau den richtigen Anstoss gegeben.

Tobias hat gesagt.:
Vom Standpunkt einer veröffentlichten Bibliothek ist es vielleicht sogar sinnvoll zu sagen, dass private und package-private Member nicht dokumentiert sein sollten, von wegen Kapselung und Information Hiding. Da kann man aber sicher drüber streiten.

Würde ich unbedingt so sehen. Wie ich ja schon beschrieben hatte sind meine Hilfsklassen eher Konstrukte für mich und wenig sinnvoll für andere. Mag jetzt ein schlechtes Klassendesign zugrunde liegen oder nicht, aber anders hauts momentan nicht hin. Wenn man alles dokumentiert geht eben die Kapselung den Bach runter.
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
G Public oder Private oder Protected Sinn Allgemeine Java-Themen 14
J Best Practice Testen von protected Methoden Allgemeine Java-Themen 7
badfish Inerhalb der [void main] auf ein Objekt der [protected void] zugreifen Allgemeine Java-Themen 13
O Methoden in abstrakter Klasse: public oder protected? Allgemeine Java-Themen 16
E einfache Frage zu protected Allgemeine Java-Themen 10
J Einbinden einer protected-Methode aus anderem Package Allgemeine Java-Themen 2
L Zugriffsschutz: protected und packages Allgemeine Java-Themen 6
P Feststellen, Welche Classes ich aus einem JAR nutze? Allgemeine Java-Themen 6
L Vererbung Using @Autowired in Abstract Classes Allgemeine Java-Themen 4
S Zugriff auf jUnit Test Suite Runner-Instanzen innerhalb von Test Classes Allgemeine Java-Themen 7
fastjack JUnit Supplementary Classes Allgemeine Java-Themen 4
M reflection in inner classes Allgemeine Java-Themen 7
M Problem mit Variablenzugriff bei annonymous inner classes Allgemeine Java-Themen 2
J Verständnisfrage - nested static classes Allgemeine Java-Themen 11
I reflection get inner static classes Allgemeine Java-Themen 2
E Anonymous Classes und UML Allgemeine Java-Themen 5
F JNI - Istanzieren einer C++ classes aus einem Java-Programm Allgemeine Java-Themen 4
B Von Inner Classes auf die "Outer Classes" zugreife Allgemeine Java-Themen 4
D Eigene Classes aus anderen .java-Dateien Allgemeine Java-Themen 2
T Hibernate Criteria Queries - Abfragen von Collection-Members Allgemeine Java-Themen 2
K Static Members von Superklasse für JEDEN Erben Allgemeine Java-Themen 6
A JAVA-Projekt - suche dringend partner/members Allgemeine Java-Themen 9

Ähnliche Java Themen

Neue Themen


Oben