Layoutprobleme? - Styleswitcher!
![]() |
| | Themen-Optionen |
| | Nach oben #1 |
| Neuer Benutzer Registriert seit: 12.04.2008
Beiträge: 2
| Mit inneren Klassen habe ich in Java bisher die jeweils äusseren Klassen autorisiert, als einzige auf Methoden anderer Klassen zuzugreifen, wo durch die Implementierung der anderen Klasse nur der Modifier "public" für die Methode zugelassen ist, jedoch nicht jeder darauf "zugeifen" soll. z.B.: Code: public class Manager
{
private static final Authority AUTH = new Authority();
private static Manager instance = null;
private Manager()
{
//etwas Code...
}
public static Manager instance()
{
if(instance == null) instance = new Manager();
return instance;
}
public static class Authority
{
private Autority()
{
}
}
public boolean addEntry(Entry e)
{
//Datenbankeintrag erstellen <- int id = "Insert-ID"
return e.setID(id, new Authority());
}
}
public class ManagerEntry
implements Entry
{
private int ID;
public ManagerEntry()
{
//etwas Code...
}
public boolean setID(int id, Authority auth)
{
if(auth != null) this.ID = id;
return auth != null;
}
}
public interface Entry
{
setID(int id, Authority auth);
} cu Spacerat Geändert von Spacerat (12.04.2008 um 14:07 Uhr). Grund: Gramatikfehler |
| | |
| | Nach oben #2 |
| Jann Hendrik Bekaan Registriert seit: 02.12.2004 Ort: Wildeshausen
Beiträge: 1.542
| Ich habe diesen post von dem thread Subclasses in PHP - sinnvoll? abgespalten.
__________________ Umfragen: Wenn du dich in ein interessantes Thema eingearbeitet hast, dann lass andere daran teilhaben! Schreibe ein Tutorial und beschreibe, wie es geht, was nicht klappt, wo man aufpassen muss usw. Danke! |
| | |
| | Nach oben #3 |
| Martin Eisengardt Registriert seit: 30.03.2006 Ort: Pfinztal
Beiträge: 353
| Kurz Antwort: Bis einschliesslich PHP 5 gar nicht.
__________________ Open Sourcing the Online Gaming Universe PHP/SQL/Java/C++/Assembler. Seit Jahren Mitglied und Entwickler in einem der wohl größten Java-Projekte der Welt: http://weblogs.java.net/blog/hansmul...e_desktop.html |
| | |
| | Nach oben #4 |
| Neuer Benutzer Registriert seit: 12.04.2008
Beiträge: 2
| Dann wäre das Thema im ursprünglichen Thread (Subclasses in PHP sinvoll oder nicht?) wohl eindeutig geklärt. Aber mal was anderes: Nun habe ich eben jenes Problem in PHP (das öffentliche Methoden nur von auserwählten Klassen aufgerufen werden sollen) wie oben beschrieben. Gibt es in PHP wenigstens irgend etwas, womit man das (auch ohne Subclasses) hinbekommt? cu Spacerat |
| | |
| | Nach oben #5 |
| Martin Eisengardt Registriert seit: 30.03.2006 Ort: Pfinztal
Beiträge: 353
| Das sprich ja nicht gegen innere Klassen, was dort in dem Thema genannt wird. Der Artikel ist Humbug ganz einfach weil alle Argumente für innere Klassen weggelassen wurden. Ohne Zusatzklassen. Hmm. Der einzige Weg, der mir in PHP einfallen würde, wäre, herauszufinden, wer einen aufruft. Beispielweise via debug_backtrace. Gehen tut das gut, also den Aufrufen anschauen und schauen, ob es eine vertraute Klasse ist. Das sollte man aber nur an wirklich ausgewählten und sehr kritischen Stellen machen, denn es ist logischerweise nicht gerade der Performance zuträglich. ungetestet: Code:
function get_caller_class()
{
$arr = debug_backtrace();
// Array-Position 1, da die Position 0 den Aufruf con Secure::secured() enthält.
// Die erste Array-Position hingegen enthält deren Aufrufer.
return array_key_exists('class', $arr[1]) ? $arr[1]['class'] : false;
}
class Secure
{
public static function secured()
{
if (get_caller_class() !== 'SecuredCaller')
{
throw new Exception('Security leak!!!');
}
// .... hier der gesicherte Code
}
}
function unsecure()
{
Secure::secured(); // Hier wird die Exception geworfen, da der Aufruf nicht aus Klasse 'SecuredCaller' erfolgte...
}
__________________ Open Sourcing the Online Gaming Universe PHP/SQL/Java/C++/Assembler. Seit Jahren Mitglied und Entwickler in einem der wohl größten Java-Projekte der Welt: http://weblogs.java.net/blog/hansmul...e_desktop.html Geändert von mepeisen (12.04.2008 um 21:48 Uhr). |
| | |
![]() |
| Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1) | |
| Themen-Optionen | |
| |
Ähnliche Themen | ||||
| Thema | Autor | Forum | Antworten | Letzter Beitrag |
| Subclasses in PHP - sinnvoll? | Ben | PHP-Programmierung | 8 | 14.08.2006 06:45 |
| alle Klassen eines Packages ermitteln | ehli75 | Allgemeine Java-Programmierung | 3 | 16.12.2005 14:30 |
| PropertyChangeEvent etc. auch für Klassen, die keine Beans sind? | NewYork | Allgemeine Java-Programmierung | 2 | 23.11.2005 01:07 |
| Performanceeinbusen beim Laden von Klassen? | Gottzilla | Allgemeine Java-Programmierung | 4 | 15.08.2005 02:08 |
| MVC Programmierung nur mit Klassen mit UI Endung? | Java17 | Desktop-Applikationen und Grafik | 5 | 14.03.2005 18:12 |
Alle Zeitangaben in WEZ +2. Es ist jetzt 07:02 Uhr.
Nach oben







