image-ru-01-05

„Hi. Mein Name ist Laga Bilaabo. Ich bin Außerirdischer und der Arzt auf diesem Schiff. Ich hoffe, dass wir uns anfreunden werden.“

„Ich auch.“

„Auf meinem Heimatplaneten benutzen wir die fortschrittliche Programmiersprache Pascal statt der rückständigen Sprache Java. Hier kannst du dir Java- und Pascal-Code zum Vergleich nebeneinander ansehen:“

Java Pascal
public class MyFirstClass
{
   public static void main(String[] args)
   {
      int a, b, c;
      String s1, s2;
      System.out.println("Enter two numbers");
      a = new Scanner(System.in).nextInt();
      b = new Scanner(System.in).nextInt();
      c = a + b;
      System.out.println("The sum is " + c);
   }
}
Program MyFirstProgram;
Var
   a, b, c: Integer;
   s1, s2: String;
Begin
   WriteLn("Enter two numbers");
   ReadLn(a);
   ReadLn(b);
   c := a + b;
   WriteLn("The sum is ", c);
End.

„Hier siehst du das gleiche Programm in zwei verschiedenen Sprachen. Wie du siehst, besteht es in Pascal aus weniger Zeilen, und das ist der Beweis, dass Pascal Java überlegen ist.“

„Ich dachte mir, dass du durch dieses Beispiel Java besser verstehen kannst, wenn du schon einmal mit Pascal zu tun hattest.“

„Nein, habe ich nicht. Aber es ist trotzdem interessant, zwei Programmiersprachen zu vergleichen.“

„Na schön. Dann werde ich mal weitermachen.“

„In Pascal bringen wir den Code im Programmrumpf, in Prozeduren oder Funktionen unter. In Java ist dieser Vorgang vereinfacht worden: Programmrumpf, Prozeduren und Funktionen werden durch Funktionen ersetzt, die man als Methoden bezeichnet.“

Java Pascal
Hauptmethode „main“
public static void main(String[] args)
{
   System.out.println("Ho-ho-ho!");
}
Programmrumpf
Begin
   WriteLn("Ho-ho-ho!");
End.
Funktion/Methode
double sqr(double a)
{
   return a * a;
}
Funktion
Function Sqr(a: Real): Real
Begin
   Sqr := a * a;
End;
Funktion mit leerem Rückgabewert (void)
void doubleWrite(String s)
{
   System.out.println(s);
   System.out.println(s);
}
Prozedur
Procedure DoubleWrite(s: String);
Begin
   WriteLn(s);
   WriteLn(s);
End;

„In der Pascal-Spalte sehe ich die Wörter ‚Programmrumpf‘, ‚Funktion‘ und ‚Methode‘, aber in Java wird das alles Methode genannt. Das ist etwas merkwürdig.“

„Ja, wir Außerirdischen finden das sehr merkwürdig. Aber Menschen wollen immer alles vereinheitlichen.“

„In Java gehört jeder Code zu einer Methode, deshalb musst du noch nicht einmal das Wort Funktion hinschreiben, wie in Pascal, um eine Methode zu deklarieren.

„Es ist alles ganz einfach. Wenn eine Codezeile aussieht wie Typ + Name, dann ist es entweder eine Deklaration einer Methode oder einer Variablen. Wenn nach dem Namen eine Klammer folgt, handelt es sich um die Deklaration einer neuen Methode. Wenn keine Klammern folgen, handelt es sich um die Deklaration einer Variablen.

„Deklarationen von Variablen und Methoden sehen sich in Java sehr ähnlich. Schau es dir selbst an:“

Code Beschreibung
String name;
Eine Variable namens name. Sie ist ein String.
String getName()
{
}
Eine Methode namens getName, die einen String zurückgibt.

„Aber das ist noch nicht alles. In Java können Methoden nicht isoliert existieren. Sie müssen zu einer Klasse gehören. Wenn Menschen also ein kleines Programm in Java schreiben wollen, müssen sie zuerst eine Klasse erstellen, darin eine Hauptmethode main deklarieren und erst dann können sie ihren Code in die Methode schreiben. Diese Erdlinge sind wirklich seltsam!“

„Vorhin ist Diego vorbeigekommen und hat mich gebeten, dir diese Aufgaben zu geben. Ich hoffe, du hast Spaß daran.“