OOP Wrapper ermöglicht Zugriff für andere Packages?

flossy

Mitglied
Ich versuche gerade die Java Modifier etwas genauer zu verstehen.
Angenommen ich möchte Bibliothek erstellen, die Klassen verwedent, die nicht von außen für den Library-Nutzer sichtbar sein sollen, so mache ich doch folgendes:

Java:
package org.my.library;

public final class MyInternalClass{

  protected MyInternalClass(){
    // ...
  }

  protected void anInternalMethod(){
    // ...
  }
}
richtig?

Wenn der Entwickler nun aus seinem package org.developer.application zugreifen will, so kann er MyInternalClass ja nicht instanzieren. Er könnte jedoch ein Wrapper schreiben:
Java:
package org.my.library;

public class MyWrapperClass{

  private MyInternalClass c;

  public MyWrapperClass(){
    c = new MyInternalClass();
  }

  public void anInternalMethod(){
    c. anInternalMethod();
  }
}
richtig?

Damit können nun aus dem package org.developer.application die internen Methoden von MyInternalClass aufgerufen werden. richtig?

Kann man dies auch verhindern?
 

Schumi

Bekanntes Mitglied
Ich verstehe nicht ganz, wie das mit dem Wrapper funktionieren soll. Wenn der in einem anderen Package liegt, kann der die protected Methoden an der Klasse nicht aufrufen, auch wenn er sich eine solche Variable hält.

Ok, wenn er den Wrapper ins gleiche Package schmeißt müsstest Du die Methoden natürlich private machen. Wenn das nicht geht, müsstest Du ihm wohl den schreibenden Zugang zu den Packages verwähren.
 
Zuletzt bearbeitet:

flossy

Mitglied
Ich verstehe nicht ganz, wie das mit dem Wrapper funktionieren soll. Wenn der in einem anderen Package liegt, kann der die protected Methoden an der Klasse nicht aufrufen, auch wenn er sich eine solche Variable hält.
Daher steht er ja im gleichen Package ;-)

Ok, wenn er den Wrapper ins gleiche Package schmeißt müsstest Du die Methoden natürlich private machen.
Nun, wenn ich die Methoden auf private setze, dann können andere Klassen aus dem Paket wiederum nicht zugreifen, was jedoch gewünscht ist.

Wenn das nicht geht, müsstest Du ihm wohl den schreibenden Zugang zu den Packages verwähren.
Was ist damit gemeint? Wie macht man das?
 

Sonecc

Gesperrter Benutzer
Gehen wir davon aus, dass du da wirklich eine Library machen willst, dann wird diese sowieso innerhalb einer *.jar datei stehen und damit kann sich niemand mehr an dein Package anbinden.
Die Klasse wäre damit nach außen hin unsichtbar!

Sind die Klassen nicht in einer Jar exportiert worden, kann man sich auch in das Package einklinken
 
S

SlaterB

Gast
> und damit kann sich niemand mehr an dein Package anbinden.

packages sind keine Verzeichnisse, lassen sich überall deklarieren

-----

@flossy
erstelle dir ein package java.lang und darin eine Klasse,
versuche die zu initalisieren oder darin eine main zu starten

->
java.lang.SecurityException: Prohibited package name: java.lang
at java.lang.ClassLoader.preDefineClass(Unknown Source)
at java.lang.ClassLoader.defineClass(Unknown Source)
..

was man dafür an Security einstellen muss, kann ich nicht sagen, aber irgendwie dürfte eine Möglichkeit bestehen

edit:
Controlling Package Access With Security Permissions and Sealed JAR Files
 
Zuletzt bearbeitet von einem Moderator:
Ähnliche Java Themen
  Titel Forum Antworten Datum
123456789sssssaaaa Java Wrapper Class Java Basics - Anfänger-Themen 13
O Wrapper Klassen Java Basics - Anfänger-Themen 6
S Erste Schritte Funktionsaufruf mit Wrapper Java Basics - Anfänger-Themen 4
3 ArrayList Integer Wrapper Klasse als Ersatz für normale Arrays Java Basics - Anfänger-Themen 10
R Einige Neulingsfragen (Wrapper, GUI-Programmierung) Java Basics - Anfänger-Themen 4
S Wrapper Klasse und extends Java Basics - Anfänger-Themen 2
M Wann eine Wrapper Klasse verwenden und wann einen primitiven Datentypen? Java Basics - Anfänger-Themen 8
B guter Jar-Wrapper Java Basics - Anfänger-Themen 13
L OOP Wrapper Klassen - Stack-Aufgabe Java Basics - Anfänger-Themen 2
M wrapper dll Java Basics - Anfänger-Themen 3
J Java.Util.Properties wrapper class (Review Request) Java Basics - Anfänger-Themen 2
U Wrapper-klassen Java Basics - Anfänger-Themen 9
S Methode die Wrapper Klasse fuer einen primitiven Typ zurueck Java Basics - Anfänger-Themen 11
T Wrapper-Klassen Java Basics - Anfänger-Themen 5
N Was ist eine Wrapper Klasse ? Java Basics - Anfänger-Themen 2
S Wrapper-Pattern Beispiel Java Basics - Anfänger-Themen 2
G Frage zur Objekt-Wrapper Float ? Java Basics - Anfänger-Themen 6
A Wrapper-Klassen Java Basics - Anfänger-Themen 5
I In unterschiedlichen Applikation Zugriff auf eine gemeinsame Anwendung? Java Basics - Anfänger-Themen 8
C Zugriff auf Methode Java Basics - Anfänger-Themen 2
I Applikationsserver (WildFly) - Zugriff auf Ressourcen.. Problem mit Pfade Java Basics - Anfänger-Themen 10
J Zugriff auf eine 2. Klasse die per UI-Designer erstellt wurde Java Basics - Anfänger-Themen 1
Encera Zugriff auf Map-Objekte Java Basics - Anfänger-Themen 3
T Zugriff auf Control anderer Klasse Java Basics - Anfänger-Themen 5
W Unterschiede bei Zugriff auf Objekt und Klassenvariablen über einen Getter? Java Basics - Anfänger-Themen 2
EchtKeineAhnungManchmal hallo habe ein Problem mit einer Datei -> (Zugriff verweigert) Java Basics - Anfänger-Themen 4
R TreeSet Zugriff aus anderer Klasse Java Basics - Anfänger-Themen 8
C Kein Zugriff auf Klassenmethoden in Main Methode Java Basics - Anfänger-Themen 23
H Zugriff verweigert Java Basics - Anfänger-Themen 5
moiss002 Umgebungsvariable Kein Zugriff auf ein Array Java Basics - Anfänger-Themen 7
B Probleme mit Zugriff auf Dateisystem Windows 10 ( jFileChooser) Java Basics - Anfänger-Themen 17
B Zugriffsmodifier, Zugriff außerhalb Package Java Basics - Anfänger-Themen 5
C Zugriff auf Attribut von Oberklasse Java Basics - Anfänger-Themen 8
P Klasse hat keinen Zugriff auf getter/setter-Methoden eines Objektes Java Basics - Anfänger-Themen 9
B Methoden Methoden haben kein Zugriff auf variablen Java Basics - Anfänger-Themen 4
M Gettter/Setter Methoden Klassenfelder kapselung und zugriff? Java Basics - Anfänger-Themen 1
S Zugriff auf protected Fields = guter Programmierstil? Java Basics - Anfänger-Themen 11
M Pfadprobleme - Zugriff auf einen Ordner im Workspace Java Basics - Anfänger-Themen 17
ruutaiokwu Bluetooth-Zugriff, braucht es dazu plattformabhängige Libraries oder kann das Java mittlerweile selbst? Java Basics - Anfänger-Themen 10
R Zugriff auf den Index eines Arrays, welches ein Objekt ist. Java Basics - Anfänger-Themen 4
M Zugriff auf eine ArrayList in einer anderen Klasse Java Basics - Anfänger-Themen 4
P Zugriff auf Variablen anderer Klassen in Greenfoot Java Basics - Anfänger-Themen 1
L Methoden Zugriff <identifier> expected Java Basics - Anfänger-Themen 13
T Java - Zugriff nur mit CLASSPATH ? Java Basics - Anfänger-Themen 7
B Klassen Zugriff auf ein Objekt einer Klasse aus einer Methode heraus Java Basics - Anfänger-Themen 4
L Zugriff auf Attribute eins Objekts über ActionListener Java Basics - Anfänger-Themen 4
D Zugriff auf Methode einer anderen Klasse Java Basics - Anfänger-Themen 5
S Zugriff auf Objekt Java Basics - Anfänger-Themen 5
A Klassen Zugriff auf Instanzen Java Basics - Anfänger-Themen 2
N ArrayList in eigener Klasse erzeugen mit Zugriff Java Basics - Anfänger-Themen 7
J Zugriff auf Variable in anderem Programm Java Basics - Anfänger-Themen 5
Q Zugriff auf Attribute Java Basics - Anfänger-Themen 3
J Klassen Zugriff auf ein "String Array" Java Basics - Anfänger-Themen 6
H Datentypen ArrayList in ArrayList: Zugriff Java Basics - Anfänger-Themen 6
J get methoden zugriff und objekt erzeugung Java Basics - Anfänger-Themen 30
J Datenbank Zugriff Java Basics - Anfänger-Themen 24
T Zugriff auf JCheckBox Java Basics - Anfänger-Themen 8
E Netzlaufwerk Zugriff schlägt fehl Java Basics - Anfänger-Themen 11
C Group, Actor und Instanz-Zugriff, LibGDX Java Basics - Anfänger-Themen 4
S Zugriff auf Attribut einer unbekannten Klasse erhalten Java Basics - Anfänger-Themen 6
R Methoden Methode der GUI-Klasse Zugriff auf Methoden der Hauptklasse Java Basics - Anfänger-Themen 9
S Vererbung Zugriff auf die Basisklasse einer "zweiten" Erweiterungsklasse Java Basics - Anfänger-Themen 2
Z Threads Threads - Zugriff auf Ressourcen ohne(Lock, Synchronized) Java Basics - Anfänger-Themen 2
S Vererbung Zugriff auf Methode funktioniert nicht (static/non-static) Java Basics - Anfänger-Themen 3
F Klassen Zugriff auf verschachtelte Objekte Java Basics - Anfänger-Themen 11
J Sichtbarkeit und Zugriff Java Basics - Anfänger-Themen 9
G Wieviel kostet der Zugriff auf Objektattribute im Vergleich zur Erstellung von vars in Methode? Java Basics - Anfänger-Themen 11
L Zugriff auf zwei Java-Quellcodes Java Basics - Anfänger-Themen 3
A OOP Zugriff auf Objekte von außen Java Basics - Anfänger-Themen 8
M Kapselung Datenkapselung Sinn direkter Zugriff? Java Basics - Anfänger-Themen 1
G Methoden Zugriff auf Methode.. aus einer anderen Klasse Java Basics - Anfänger-Themen 6
J JDialog Zugriff auf parent JDialog Java Basics - Anfänger-Themen 5
K Collections Zugriff auf ein bestimmtes Element in der Collection Java Basics - Anfänger-Themen 1
K ArrayList in Konstruktor - wie späterer Zugriff Java Basics - Anfänger-Themen 2
F Zugriff auf Objekt einer anderen Klasse Java Basics - Anfänger-Themen 7
P Zugriff auf Felder in ArrayList Objekten Java Basics - Anfänger-Themen 2
J Erste Schritte Zugriff auf Eigenschaft Java Basics - Anfänger-Themen 2
M MVC - Problem mit Zugriff auf Objekt Java Basics - Anfänger-Themen 4
D Zugriff auf von einer anderen Klasse erstellten Objekten Java Basics - Anfänger-Themen 5
C 5 - Zugriff verweigert Java Basics - Anfänger-Themen 1
K Zugriff auf Variabeln Wert einer Instanz Java Basics - Anfänger-Themen 4
A Methoden Zugriff auf eingelesene Variablen in der main Methode (ohne Änderung der Parameterliste) Java Basics - Anfänger-Themen 4
Z Methoden Zugriff mit Klasse 3 auf Methode von Klasse 2 welche in Klasse 1 erzeugt wird Java Basics - Anfänger-Themen 6
Z Zugriff auf andere Methoden Java Basics - Anfänger-Themen 12
Z Zugriff auf Pakete Java Basics - Anfänger-Themen 5
G Zugriff zwischen Klassen Java Basics - Anfänger-Themen 15
N Problem mit Swing Textfeld und Zugriff aus anderer Klasse Java Basics - Anfänger-Themen 6
H Kein Zugriff auf das Element einer JList möglich: Fehlermeldung Java Basics - Anfänger-Themen 2
W OOP Zugriff auf mit Objekt erstellte Struktur Java Basics - Anfänger-Themen 7
F Klassen Zugriff auf Fenster aus versch. Klassen Java Basics - Anfänger-Themen 5
M Variablen Zugriff von außerhalb eines Blockes auf eine Variable innerhalb eines Blockes Java Basics - Anfänger-Themen 2
U Methoden Zugriff auf Array von weiterer Methode einer Klasse, Rückgabewert Problem Java Basics - Anfänger-Themen 5
B Klassen Zugriff auf Daten der Child-Klasse Java Basics - Anfänger-Themen 9
W Typisierte ArrayList und der Zugriff auf den Typ Java Basics - Anfänger-Themen 5
M Zugriff auf Klasse Java Basics - Anfänger-Themen 2
K Zugriff auf C: Java Basics - Anfänger-Themen 5
S Das richtige Format für den SOAP Zugriff Java Basics - Anfänger-Themen 0
S Klassen Zugriff auf Attribute einer zweiten Klasse, welche durch dritte gesettet wurden? Java Basics - Anfänger-Themen 2
N Zugriff bei Package Struktur Java Basics - Anfänger-Themen 6
M Enum: Zugriff auf Konstanten Java Basics - Anfänger-Themen 7

Ähnliche Java Themen

Neue Themen


Oben