Javakurs2008/Vortrag03: Unterschied zwischen den Versionen
K (Linkfix: Alle Videos sind jetzt unter media.freitagsrunde.org zu erreichen.) |
|||
(5 dazwischenliegende Versionen von 4 Benutzern werden nicht angezeigt) | |||
Zeile 13: | Zeile 13: | ||
== Video Mitschnitt == | == Video Mitschnitt == | ||
− | + | <dhflashplayer>filepath=http://media.freitagsrunde.org/javakurs/2008/8-4-08-LE3.flv|width=640|height=512</dhflashplayer> | |
− | <dhflashplayer>filepath=http:// | + | <br> |
− | + | Downloads: <br> | |
− | + | * [http://media.freitagsrunde.org/javakurs/2008/8-4-08-LE3-LQ.mkv Low Quality] (55MB <i>x264</i>) | |
+ | * [http://media.freitagsrunde.org/javakurs/2008/8-4-08-LE3-HQ.avi High Quality] (471MB <i>x264</i>) | ||
+ | * [http://media.freitagsrunde.org/javakurs/2008/8-4-08-LE3-UHQ.avi Ultra High Quality] (888MB <i>FMP4</i>) | ||
== Themen == | == Themen == | ||
Zeile 81: | Zeile 83: | ||
TODO | TODO | ||
+ | |||
+ | [[Kategorie:Java]] |
Aktuelle Version vom 10. April 2012, 10:51 Uhr
Inhaltsverzeichnis
Methoden, Java API, Namensgebung, Testen, Debuggen
Vortragende: Kai Dietrich <kai freitagsrunde.org>, Nadim El Sayed <thenado at cs tu berlin de>
Folien
- animierte Version (odp)
- print-Version (pdf)
Audio Podcast
TODO
Video Mitschnitt
<dhflashplayer>filepath=http://media.freitagsrunde.org/javakurs/2008/8-4-08-LE3.flv%7Cwidth=640%7Cheight=512</dhflashplayer>
Downloads:
- Low Quality (55MB x264)
- High Quality (471MB x264)
- Ultra High Quality (888MB FMP4)
Themen
Methoden
Strukturiertes Programmieren ist durch die Verwendung von Subroutinen gekennzeichnet. In Java heissen diese Routinen "Methoden" und gehören zu Klassen (mehr dazu in LE5 und LE6). Methoden werden innerhalb von Klassen definiert und bestehen aus Kopf und Rumpf. Im Kopf wird Rückgabetyp und Parameterliste deklariert, im Rumpf wird die Funktionalität durch Code festgelegt. Die Rückgabe wird durch eine return Anweisung erreicht.
Im Folgenden ein paar Syntax-Beispiele:
//Methodenbeispiel (Syntax und konkret) class SomeClassname { //berechnet ... aus ... und gibt ... zurück public static <RückgabeTyp> methodenName1( <Typ> paraMeter1, <Typ> paraMeter2,... ) { //do something fancy here return <Ausdruck vom Typ "Rückgabetyp"> } //fügt ... in ... ein und gibt ... zurück public static <Rückgabetyp> methodenName2( <Typ> paraMeter1, <Typ> paraMeter2 ) { //do something fancy here return <Ausdruck vom Typ "Rückgabetyp"> } //jetzt als konkretes Beispiel //berechnet die exp'te potenz von base public static double pow(int base, int exp) { //... insert code here } }
Rückgabetypen und Parameter-Typen können alle primitiven (int, double, float, char, byte, long) und komplexen Datentypen (String, Arrays, ...) von Java sein.
Parameter werden entweder als Kopie in die Methode übergeben (Call-by-Value) oder als sog. Referenz (Call-by-Reference, siehe LE 5 und 6). Call-by-Value (also die Übergabe der Parameter als Kopie) wird von Java bei primitiven Datentypen durchgeführt. Primitive Datentypen sind, vereinfacht gesagt, alle Datentypen, die nur genau einen Wert enthalten. Der Datentype int z.B. enthällt nur genau eine Zahl, mehr nicht. double, float, usw. verhalten sich genauso. String dagegen enthällt mehrere Zeichen, nämlich beliebig viele Buchstaben, und gehört damit zu den komplexen Datentypen. Ebenso alle Arrays, auch Arrays von primitiven Datentypen -- sie enthalten nun ja auch mehr als ein Element.
Java API
Die Java API ist eine Dokumentation der eingebauten Funktionalität der Java Virtual Machine. Sie stellt eine Abbildung der Namen der Klassen und Methoden auf eine Beschreibung ihrer Funktionalität dar. Die umgekehrte Frage, also ein Weg von einer Beschreibung der Funktionalität zur entsprechenden Methode oder Klasse beantwortet die Java API nur schlecht. Die Java API ist nach Packages und Klassen gegliedert. Was das ist, wird in LE5 und LE6 (hoffentlich) klar.
Die Webseite www.javadocs.org kürzt die Suche nach der richtige Klasse etwas ab und ist auch als Firefox Search-Plugin verfügbar.
Wer tiefer in den mitgelieferten Funktionsumfang von Java einsteigen möchte, der kann auf der Sun-Seite einfach eine Verzeichniseben höher gehen und gelangt auf eine Übersichtsseite die viele Tutorials, eine Suchfunktion und andere Lernmittel liefert.
Ausserdem sei hier noch auf die freie Literatur "Java ist auch eine Insel" und "Thinking in Java" verwiesen.
Namensgebung
TODO
Testen
TODO
Debuggen
TODO