Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
Beide Seiten der vorigen Revision Vorhergehende Überarbeitung Nächste Überarbeitung | Vorhergehende Überarbeitung | ||
e2:alleranfangistschwer [2017/07/11 14:47] – admin03 | e2:alleranfangistschwer [2017/07/11 15:00] (aktuell) – admin03 | ||
---|---|---|---|
Zeile 1: | Zeile 1: | ||
- | ====Installation von Java==== | + | =====Installation von Java===== |
Man lädt zunächst eine Installationsdatei herunter, führt diese ein Mal aus und löscht sie dann wieder. Danach kann ist Java und auf dem Rechner allgemein verfügbar. | Man lädt zunächst eine Installationsdatei herunter, führt diese ein Mal aus und löscht sie dann wieder. Danach kann ist Java und auf dem Rechner allgemein verfügbar. | ||
Zeile 8: | Zeile 8: | ||
- Gehe nun zu [[http:// | - Gehe nun zu [[http:// | ||
- Öffne diese komprimierte zip Datei mit deinem Explorer und kopiere das Verzeichnis '' | - Öffne diese komprimierte zip Datei mit deinem Explorer und kopiere das Verzeichnis '' | ||
- | - Lösche die Installationsdatei | + | |
- | + | | |
- | + | ||
- | ====Programmieren in Java==== | + | |
- | Programmieren lernt man durch programmieren, | + | |
- | * wie die Datei heißt, die man gerade bearbeitet, | + | |
- | * wo die Datei ist, | + | |
- | * wie man den Compiler aufruft, der aus der Datei ein ausführbares Programm macht | + | |
- | * und wie man das ausführbare Programm ausführt. | + | |
- | + | ||
- | Am Anfang sollte man keine komplizierten Hilfsmittel verwenden, weil die das Verständnis verschleiern. Also lieber kein Eclipse, NetBeans o.ä. sondern einfach alles aus der DOS-Box heraus! Aber die muss man auch erst mal haben. | + | |
- | + | ||
- | Öffne also eine Eingabeaufforderung (Windows) oder Konsole (Linux). Normalerweise ist der aktuelle Aufenthaltsort dann das Home-Verzeichnis des aktuellen Users. Die folgenden Schritte gelten für Windows-User. Wer dazu nicht gehört, weiß wahrscheinlich eh schon, wie man einen Computer bedient. | + | |
- | + | ||
- | - Gehe in das Verzeichnis, | + | |
- | m: | + | |
- | cd javaprogramme | + | |
- | </ | + | |
- | - Um zu sehen, welche Dateien schon da sind, tippe < | + | |
- | dir | + | |
- | </ | + | |
- | - Starte nun den Editor deiner Wahl, z.B. GVim und gib gleich den Namen der Datei an, die du erzeugen willst. Die Datei wird sich am Ende genau in diesem Verzeichnis hier befinden, von wo du den Editor gestartet hast.< | + | |
- | gvim Test.java | + | |
- | </ | + | |
- | - Schreibe nun das Programm und vergiss nicht, es auch abzuspeichern. Mit Vim macht man das durch Esc : w \\ Das Programm könnte folgenden Inhalt haben:< | + | |
- | public class Test{ | + | |
- | public static void main(String[] args){ | + | |
- | System.out.println(" | + | |
- | } | + | |
- | } | + | |
- | </ | + | |
- | + | ||
- | ====Kompilieren und Ausführen==== | + | |
- | Will man aus dem vom Menschen lesbaren Programmtext '' | + | |
- | < | + | |
- | c: | + | |
- | dir | + | |
- | </ | + | |
- | Beachte, dass man dem Rechner sagen muss, wo '' | + | |
- | + | ||
- | Nun wollen wir das Programm noch ausführen. Das tut der Befehl '' | + | |
- | c: | + | |
- | </ | + | |
- | + | ||
- | Während der weiteren Entwicklung eines Programms muss man all diese Schritte mehrfach ausführen. Glücklicherweise braucht man dafür jetzt auch in der DOS-Box nur noch die Pfeil-Tasten drücken, um die vorher mühsam getippten Befehle wieder zu bekommen. | + | |
- | + | ||
- | ====Seltsames Verhalten==== | + | |
- | Vereinzelt höre ich von Schülern, dass Sie alles so gemacht haben, wie hier beschrieben, | + | |
- | < | + | |
- | c: | + | |
- | </ | + | |
- | führt zu einem '' | + | |
- | + | ||
- | In diesem Fall ist bei der Installation von Java eine Kleinigkeit schief gegangen und der '' | + | |
- | < | + | |
- | c: | + | |
- | </ | + | |
- | Der Punkt steht für das aktuelle Verzeichnis. | + | |
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | =====Aus- und Eingabe===== | + | |
- | Die ersten Programme haben keine schöne Oberfläche; | + | |
- | Textmodus. Trotzdem müssen sie nicht dumm oder langweilig | + | |
- | sein! Schon im Textmodus kann man Daten eingeben, verarbeiten und | + | |
- | Ergebnisse ausgeben, und das ist der Kern eines jeden Programms. | + | |
- | + | ||
- | Die Ausgabe ist überhaupt kein Problem, es gibt ja die Befehle | + | |
- | < | + | |
- | System.out.print(" | + | |
- | System.out.println("" | + | |
- | </ | + | |
- | '' | + | |
- | geschriebenen Zeichen. Die nächste Ausgabe wird also nahtlos dahinter angefügt. | + | |
- | + | ||
- | '' | + | |
- | der nächsten Zeile. Die obigen beiden Befehle schreiben also | + | |
- | < | + | |
- | auf den Bildschirm und fangen dann eine neue Zeile an. Der nächste | + | |
- | Schreibbefehl würde also unter dem '' | + | |
- | + | ||
- | Eingabe gibt es in zwei Formen. Wenn der Benutzer vor dem Start des | + | |
- | Programms schon weiß, wie viele und welche Daten er eingeben will, | + | |
- | so kann er diese Daten direkt nach dem Programmnamen beim Start des | + | |
- | Programms angeben. Im Programm hat er Zugriff auf diese Daten über | + | |
- | das Array '' | + | |
- | + | ||
- | Die zweite Form der Eingabe verwendet man, wenn man die Daten erst eingeben | + | |
- | will, sobald das Programm schon läuft. Man braucht dazu einen '' | + | |
- | die Systemeingabe einfängt. Die erste Zeile des folgenden Beispiels | + | |
- | schreibt man einmal am Anfang des Programms. Ab dann kann man die | + | |
- | Tastatureingabe beliebig oft ansprechen mit z.B. '' | + | |
- | < | + | |
- | java.util.Scanner tastatur=new java.util.Scanner(System.in); | + | |
- | System.out.print(" | + | |
- | int anz=tastatur.nextInt(); | + | |
- | System.out.println(" | + | |
- | </ | + | |
- | Außer '' | + | |
- | Kommazahlen oder '' | + | |
- | Mit '' | + | |
- | + | ||
- | =====Die Java-Dokumentation===== | + | |
- | In Java gibt es eine große Menge von vorgefertigten Programmpaketen, | + | |
- | + | ||
- | Wie gelangt man zu diesem Wissen? Das ist ein langsamer Prozess, bei dem man anderen Programmierern zusieht und sich mit ihnen austauscht. Der grundsätzliche Zugang ist aber immer die mitgelieferte Dokumentation. Diese besteht aus tausenden .html-Dateien, | + | |
- | + | ||
- | ====Wo ist sie?==== | + | |
- | Die Dokumentation sollte man sich auf seinen Rechner holen, damit man sie immer zur Verfügung hat. Man bekommt sie als große .zip-Datei, die man an eine beliebige Stelle auspackt, sagen wir ins Verzeichnis '' | + | |
- | + | ||
- | Die große .zip-Datei gibt es für jede Java-Version an der gleichen Stelle, wie schon die ganze Java-Installation (siehe obige Beschreibung der Java-Installation). Wenn man einen schnellen Netzzugang hat, kann man die Dokumentation aber auch im Internet finden. Für Java 1.6 ist sie bei [[http:// | + | |
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | ====Wie wird sie benutzt? | + | |
- | Die Dokumentation wird mit einem Browser gelesen. Sie wird dargestellt als eine Seite mit drei Frames. Der rechte, große Frame zeigt dabei den Inhalt an, der im linken unteren Frame ausgewählt wurde. Was der linke untere Frame zur Auswahl anbietet, kann im linken oberen Frame nochmals eingeschränkt werden, weil die Menge so riesig ist. Lassen Sie im linken oberen Frame aber die erste Zeit die Wahl auf //All Classes//, dann entgeht Ihnen nichts. | + | |
- | + | ||
- | Als Beispiel wollen wir mit Hilfe des Kosinus-Satzes die dritte Seitenlänge eines Dreiecks ausrechnen, von dem zwei Seiten und der eingeschlossene Winkel gegeben sind. | + | |
- | + | ||
- | <code java> | + | |
- | public class Seite{ | + | |
- | public static void main(String[] args){ | + | |
- | double a=Double.parseDouble(args[0]); | + | |
- | double b=Double.parseDouble(args[1]); | + | |
- | double gamma=Double.parseDouble(args[2])*Math.PI/ | + | |
- | double c=a*a+b*b-2*a*b*Math.cos(gamma); | + | |
- | c=Math.sqrt(c); | + | |
- | System.out.println(" | + | |
- | } | + | |
- | } | + | |
- | </ | + | |
- | + | ||
- | Das Programm wird mit drei String-Argumenten aufgerufen, z.B. | + | |
- | java Seite 2.4 3.2 72 | + | |
- | mit dem Ergebnis | + | |
- | c=3.35462352083 | + | |
- | + | ||
- | In diesem Programm werden zwei Java-Klassen verwendet '' | + | |
Zeile 162: | Zeile 20: | ||
* Ich achte **immer** strengstens auf korrekte Einrückung. Da ich meinen Editor gut beherrsche, fällt mir das nicht schwer. **Beherrsche deinen Editor!** | * Ich achte **immer** strengstens auf korrekte Einrückung. Da ich meinen Editor gut beherrsche, fällt mir das nicht schwer. **Beherrsche deinen Editor!** | ||
* Alles was ich schreibe, muss spätestens wenige Minuten nach dem aktuellen Schreibvorgang schon wieder kompilierbar sein. | * Alles was ich schreibe, muss spätestens wenige Minuten nach dem aktuellen Schreibvorgang schon wieder kompilierbar sein. | ||
- | | + | * Ich versuche, zu jeder Zeit möglichst wenige Methoden (idealerweise nur eine einzige) zu bearbeiten und parallel aus der '' |
- | | + | |
* Während der Testphase sind Schweinereien erlaubt. Am Ende müssen die aber raus aus der Klasse. '' | * Während der Testphase sind Schweinereien erlaubt. Am Ende müssen die aber raus aus der Klasse. '' | ||