Zum Inhalt springen

Java Language Specification

aus Wikipedia, der freien Enzyklopädie
Dies ist eine alte Version dieser Seite, zuletzt bearbeitet am 20. April 2005 um 12:47 Uhr durch C00n (Diskussion | Beiträge) (Syntax). Sie kann sich erheblich von der aktuellen Version unterscheiden.

Die Java Language Specification (deutsch Spezifikation der Sprache Java) ist die Spezifikation der Semantik und Grammatik der Programmiersprache Java. Aktuell ist sie in der zweiten Version verfügbar.

Syntax

Die dabei verwendete Syntax ist relativ einfach und übersichtlich:

Anweisungen:
Jede Anweisung endet mit einem Semikolon, Zeilenumbrüche und Leerzeichen werden nicht berücksichtigt. In einer Zeile können beliebig viele Anweisungen stehen.

Zuweisung:
    a = 2 + 3 ;
Funktionsaufruf:
    Klasse.Funktionsname(Parameter1, ParameterN);
Beispiel: System.out.println("Hallo Welt");

Verzweigung:
Statement steht für eine Anweisung oder einen Anweisungsblock: ein Anweisungsblock beginnt mit { und endet mit } und kann beliebig viele Anweisungen enthalten.

IfThenStatement:
    if ( Expression ) Statement
IfThenElseStatement: if ( Expression ) Statement else Statement

Für den Ausdruck IfThenStatement kann die darunter stehende Zeile verwendet werden. Sollen Alternativen angeboten werden, werden die Zeilen einfach untereinander aufgelistet:

ArgumentList:
Argument
ArgumentList, Argument

Optionale Angaben werden mit einem tiefergestellten opt gekennzeichnet:

ForStatement:
for ( ForInitopt ; Expressionopt ; ForUpdateopt ) Statement

welches in allen möglichen Variationen ausgeschrieben so aussieht:

ForStatement:
for ( ; ; ) ; for ( ; ; ) Statement for ( ; ; ForUpdate ) Statement for ( ; Expression ; ) Statement for ( ; Expression ; ForUpdate ) Statement for ( ForInit ; ; ) Statement for ( ForInit ; ; ForUpdate ) Statement for ( ForInit ; Expression ; ) Statement for ( ForInit ; Expression ; ForUpdate ) Statement

Beispiele

Der typische, vereinfachte Aufbau mit kleinen Beispielen:

 ImportDeclaration: 
import Identifier { . Identifier } [ . * ] ;

bedeutet nichts anderes als:

 import java.util.*;

Ein weiteres Beispiel:

 ClassDeclaration:
ClassModifiersopt class Identifier Superopt Interfacesopt ClassBody

steht für

 public class Empty{
   }