Du verwendest einen veralteten Browser. Es ist möglich, dass diese oder andere Websites nicht korrekt angezeigt werden. Du solltest ein Upgrade durchführen oder ein alternativer Browser verwenden.
wie macht Ihr das, wenn ihr z.B. in einer GUI-Klasse eine TextArea hättet und in diese den Inhalt einer Datei reinladet. Befindet sich die DateiinhaltLade-Methode bei euch in der GUI-Klasse mit der JTextArea oder ist die Methode in einer extra Klasse?
Also ich habe gemerkt, wenn man jeden "Furz" auslagert, muss man sehr viele Objekte übergeben was nervt...
man kann es ja auch halbwegs intelligent bauen, in diesem Beispiel dürfte kein Objekt zu übergeben sein,
abgesehen von echten Daten (Dateinamen und dem eingelesenen String),
denkbare Varianten:
a) von der GUI aus:
String fileContent = irgendwer.read(fileName);
getTextArea().setText()...
b) von Irgendwo aus:
String fileName = selber gewußt oder gui.getFileName();
String fileContent = read(fileName);
gui.displayFileContent(fileContent);
man kann es ja auch halbwegs intelligent bauen, in diesem Beispiel dürfte kein Objekt zu übergeben sein,
abgesehen von echten Daten (Dateinamen und dem eingelesenen String),
denkbare Varianten:
a) von der GUI aus:
String fileContent = irgendwer.read(fileName);
getTextArea().setText()...
b) von Irgendwo aus:
String fileName = selber gewußt oder gui.getFileName();
String fileContent = read(fileName);
gui.displayFileContent(fileContent);
um was es mir eben geht, gemäß MVC z.B. alles strikt zu trennen, doch methoden zu trennen die direkt auf die GUI einwirken also wie gesagt , da bin ich nur och am objekte übergeben von einer Klasse zur anderen, habe zig Anhängigkeiten und muss schauen welches Objekt ich wo zuerst übergebe , dass ich keinen 0-pointer habe...
tja, 0-Pointer kann man genausogut in banalen 5-Zeilencode haben
und man kann derartiges MVC auch systematisch sicher(er) schreiben ohne oft auf diese Exception zu stoßen,
so allgemein gesprochen kann man dazu ja nix sagen
/**
* @param text Text to display, not <tt>null</tt>.
*/
public void display( String text ) {
// ...
wenn man solche gesichten, wie etwas aus einer datei/db etc. zu lesen schön wegkapselt, kann man auch dafür sorgen, dass diese methoden immer anständige objekte zurückliefern. einen leeren string, arrays der länge 0 etc.
sobald man anfängt, null als gültigen wert in die gui zu schieben, öffnen sich tür und tor für die geliebten exceptions. am besten man unterbindet das gleich an der quelle. und wenn dann doch mal so eine exception auftritt, dann weiss man sofort, wo genau sich der fehler eingeschlichen haben muss.