JAVA

From Medien Wiki
Revision as of 15:12, 21 October 2010 by Mm (talk | contribs) (→‎Hallo Welt)

JAVA ist eine interpretierte, höhere Programmiersprache. Neben den verschiedenen Editionen (z.B. J2SE: JAVA 2 Standard Edition, J2EE: JAVA2 Enterprise Edition oder J2ME: JAVA 2 Mobile Edition), wird JAVA auch in IDEs wie z.B. Processing oder Mobile Processing eingesetzt.

Vorteile von JAVA:

  • plattformübergreifend (theoretisch)
  • weit verbreitet für die Programmierung mobiler Anwendungen (J2ME, Android)

Nachteile von JAVA:

  • interpretiert, deshalb langsamer als andere höhere Sprachen
  • teilw. eigenes HID, wirkt auf manchen Betriebssystemen fremd


 (please help in completing this page with a basic introduction to JAVA as seen with PHP or JavaScript)!


Hallo Welt

Das Semikolon schließt einen Ausdruck ab. Zeilensprünge oder Leerzeichen sind unrelevant; der Compiler sieht alles als eine "Zeile" an, bis er auf ein Semikolon trifft.

class helloWorld {
    public static void main(String args[]) {
        System.out.println("Hello World!");
    }
}

Voraussetzung: Das Sun Java SDK ist installiert (oder wir sind auf einer *nix Plattform, auf denen das meistens bereits der Fall ist).

Wir speichern die Datei als "helloWorld.java". Um den Code zu kompilieren und eine ausführbare Datei (Programm) daraus zu machen, rufen wir das Terminal bzw. die Konsole auf und wechseln in das Verzeichnis, in dem helloWorld.java liegt und tippen:

javac helloWorld.java

Jezt sollte eine neue Datei "helloWorld.class" im Verzeichnis zu finden sein. Wir können nun das Programm starten mit:

java helloWorld



Primitive Datentypen

null		// 0 bytes 	0 bit 	=> 0
boolean	// 1 byte 	n/a 	=> 0/1; true/false
byte		// 1 bytes 	8 bit 	=> 0..255
char		// 1 byte 	16 bit 	=> Unicode Character (-32768..32767)
short		// 2 bytes 	16 bit 	=> -32768..32767
int		// 4 bytes 	32 bit 	=> -2147483648..2147483647
float		// 4 bytes 	32 bit	=> -3.4028235E+38..3.4028235E+38
long		// 8 bytes 	64 bit	=> (large int) a lot!
double		// 8 bytes 	64 bit	=> (large float) a lot!
	
Array
String
...

vergleiche auch die C-Datentypen


Kommentare

Übersicht Kommentarfunktion in HTML, CSS, JavaScript und PHP:

Sprachen Syntax
HTML
<!-- Mehrzeiliger Kommentar -->
PHP, JavaScript, CSS
/* Mehrzeiliger Kommentar */
PHP, JavaScript
// Einzeiliger Kommentar
PHP
# Einzeiliger Kommentar

Klassen

JAVA ist eine objektorientierte Sprache. Objekte enthalten typischerweise:

  • Daten ("Attribute")
  • Funktionen ("Methoden")

Methoden

Methoden sind gruppierte Einheiten, die eine bestimmte Aufgabe haben. Eine Methode erkennt man an den beiden runden Klammern. Üblicherweise sollten Methoden und Funktionen durch ein Verb benannt sein. Z.B. doSomething(); oder getItem();.

Variablen

Um eine Variable zu benutzen, muss man:

  1. Die Variable deklarieren (mit dem entsprechenden Datentyp): int a;
  2. Der Variablen einen Wert zuweisen, d.h. sie initiieren: a = 1;
  3. Die Punkte 1. und 2. können auch zusammengefasst werden: int a = 1;

Im Gegensatz zu einigen anderen Sprachen, haben Variablen in JAVA eine explizite Typ-Zuweisung (typecasted), d.h. eine Variable kann nur bestimmte Werte bestimmter Typen enthalten. In JAVA gibt es neben den primitiven Datentypen (byte, int, float, ...) eine nahezu unbegrenzte Menge an Objekt-Datentypen, z.B. String.


Klassen und Objekte

Klassen fangen im Gegensatz zu Variablen üblicherweise mit einem Großbuchstaben an. Vgl. auch CamelCase


Debugging

Unter Debugging versteht man das Finden von Bugs in der Software. Ohne entsprechende Tools kann das ein nervenaufreibender und langwieriger Prozess sein. Daher gilt:

  • Test early & test often!
  • Nutzt eine JAVA IDE wie z.B. eclipse

Ein vollwertiger Debugger ist ein wertvolles Entwicklungswerkzeug. Man kann damit "Breakpoints" setzen (üblicherweise rote Punkte in der Linienzeile), dort hält der Code während der Ausführung an; und man kann Schritt für Schritt, Zeile für Zeile weitersteppen. Gleichzeitig werden verschiedene Fenster angezeigt, in denen man die aktuellen Werte lokaler und globaler Variablen beobachten, verfolgen und setzen kann! So etwas ist ungemein hilfreich!

Frameworks

Ressourcen