Mittels der nachfolgenden Methode kann in Java ermittelt werden, ob ein Jahr ein Schaltjahr ist oder nicht:
public boolean istSchaltjahr(int jahr)
{
return ( (jahr % 4 == 0 && jahr % 100 != 0) || (jahr % 400 == 0) );
}
Die Methode “istSchaltjahr” bekommt als Argument das Jahr, für welches geprüft werden soll ob es sich um ein Schaltjahr handelt, in Form einer Ganzzahl (Integer) überliefert. Sofern das Jahr ein Schaltjahr ist, liefert die Methode den Rückgabewert “true”. Andernfalls wird “false” zurück gegeben.
Ein Methodenaufruf sieht wie folgt aus:
istSchaltjahr(1987);
Beim Programmieren nach dem MVC-Prinzip empfiehlt es sich in Java eine eigene Controller-Klasse zu entwerfen, welche die Ereignisverarbeitung koordiniert. Der einfachste Weg wäre es, wenn man zu jedem GUI-Element jeweils eine eigene Beobachterklasse schreiben würde. Viel übersichtlicher ist es jedoch, wenn in nur einer Klasse bereits mehrere Ereignisse von verschiedenen Objekten behandelt werden können. Dazu muss man herausfinden, von welchem Objekt ein Ereignis ausgelöst wird.
Als Beispiel habe ich eine JComboBox namens bennyBox, welche vom ActionListener bennyBeobachter abonniert wird:
[...]
bennyBox.setActionCommand(“changed”);
bennyBox.addItemListener(bennyBeobachter);
Sobald sich etwas an der bennyBox tut, wird das dem bennyBeobachter gemeldet. Dabei wird das selbstgewählte Kommando “changed” gesetzt, welches dem bennyBeobachter hilft, das eingetroffene Ereignis spezifisch der Quelle bennyBox zuzuordnen. Damit das ganze funktioniert, muss im bennyBeobachter das Objekt des Ereignisses in den Typ des Auslöseobjekts (im Beispiel JComboBox) gecastet werden. Danach kann man über die Methode getActionCommand() das gesetzte Kommando abrufen und zur Ereignisbehandlung einsetzen. Das sieht dann in etwa so aus:
@Override
// Implementierte Methode “itemStateChanged” von “ItemListener”
public void itemStateChanged(ItemEvent comboBoxEvent) {
JComboBox triggeredBox = (JComboBox) comboBoxEvent.getItemSelectable();
// Im String “kommando” steht im Ereignisfall “changed”:
String kommando = triggeredBox.getActionCommand();
if(kommando == “changed”){
// Ereignisbehandlung
}
}
Auf http://compressor.ebiene.de/ kann man seine CSS und JavaScript Dateien einfach und smart komprimieren. Es gibt dabei zwei unterschiedliche Stufen (basic compress und powerful compress), die die Leserlichkeit des Codes unterschiedlich stark einschränken. Falls man mit der CSS-Datei danach noch weiter arbeiten möchte, empfehle ich die Basis-Kompression.
Die CSS-Datei von bennyn.de (v1) konnte von 7028 Bytes auf 3879 Bytes geschrumpft werden. Das sind gut 45%. Die erweiterte Kompression würde nochmals 7% einbringen, was aber dazu führen würde, dass ich mich als Mensch ziemlich schwer tun würde, den Code noch zu entziffern. Einem Webserver macht sowas jedoch nichts aus, im Gegenteil.
Zusammen mit der Umstellung auf Winterzeit (ja, die Uhren haben sich gerade von 3 Uhr auf 2 Uhr zurück gedreht), stelle ich meine Homepage vom Standard WordPress-Design auf bennyn.de – Version 1.1 um. Das Layout dazu existierst schon ziemlich lange. Enstanden ist es im Rahmen eines Abschlussprojekts im Fach Mediengestaltung an der Fachhochschule Brandenburg. Mit großer Unterstützung von Holger Wettstein. Die Ameise stammt übrigens von der Designerin Ivana Forgo. Vielen Dank dafür!
An dieser Stelle möchte ich auch noch erwähnen, dass bennyn.de – Version 1.1 nur eine Vorab-Version ist. Diese Seite ist noch nicht für den Internet Explorer 6 geeignet. Wer Probleme mit der Auflösung hat, dem soll gesagt sein, dass diese Webseite für eine Bildschirmgröße von 1280×800 Pixeln (oder höher) angepasst wurde. Die verwendeten Grafiken sind übrigens PNGs, die im Gegensatz zu JPEGs wenigstens verlustfrei sind. Leider habe ich zum Start des neuen Designs noch kein Gästebuch parat und auch am Inhalt ist noch nichts dazu gekommen. Deshalb tut einfach so, als würde die Seite aussehen wie immer und schreibt mir euer Lob erst, wenn ich die Seite komplett fertig habe. *g* Inhaltliche Fehler und Bugs dürfen natürlich schon vorher gemeldet werden. Ich bin für jeden Hinweis dankbar.
Viele Grüße
Benny
Ein wichtiger Hinweis, herausgegeben von der DLRG, LV Westfalen:
Die Fahrer von Rettungsfahrzeugen und Ambulanzen haben bemerkt, dass
bei einem Verkehrsunfall die meisten Verwundeten ein Mobiltelefon bei sich
haben. Bei verletzten Personen, die nicht mehr ansprechbar sind,
wissen die Einsatzkräfte jedoch nicht, wer aus den langen Adresslisten
zu kontaktieren ist.Ambulanzfahrer und Notärzte haben also vorgeschlagen, dass jeder in
sein Handy-Adressbuch die im Notfall zu kontaktierende Person unter
einem einheitlichen Pseudonym eingibt.Das international anerkannte Pseudo ist: ICE (= In Case of
Emergency). Unter diesem Namen sollte man die Rufnummer der Person
eintragen, welche im Notfall durch Polizei, Feuerwehr oder Erste Hilfe
anzurufen ist. Sind mehrere Personen zu kontaktieren, trägt man ICE1,
ICE2, ICE3 usw. ein.Leicht durchzuführen, kostet nichts, kann aber viel erreichen. Wenn
diese Meldung weitergeleitet wird, kann dieses Verfahren weltweit
Anwendung finden.Mit freundlichen Grüßen
Jens Giesen
Stellv. Technischer Leiter
Deutsche Lebens-Rettungs-Gesellschaft
Wer diesen Hinweis gelesen hat, sollte am Besten jetzt gleich, sofort (!) eine vertrauenswürdige Person unter dem Namen ICE in seinem Handy-Adressbuch speichern. Sonst vergisst man das nur wieder! Immerhin sind wir Menschen ja ziemlich ökonomisch (man könnte auch faul dazu sagen *g*). Ich habe es bereits getan.
Das ist übrigens kein Kettenbrief. Es handelt sich hierbei um eine offizielle Meldung.
Hilfreiche Eclipse Tastenkürzel (engl. shortcuts):
Alt + Pfeil auf/ab: Zeile verschieben
Strg + D: Zeile löschen
Strg + Leertaste: Auto-Vervollständigung
Strg + Pfeil auf/ab: Scrollen (ohne Cursorposition zu verlieren)
Strg + Shift + C: Ein-/Auskommentieren
Strg + Shift + M: Paket importieren (falls nötig)

0