CodeGym /Java-Kurse /Java Syntax /Vergleich mit Pascal

Vergleich mit Pascal

Java Syntax
Level 1 , Lektion 8
Verfügbar
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.“

Kommentare (34)
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION
otter Level 9, Switzerland
14 Februar 2024
Soll ich daher besser Pascal lernen? 😅
n.ahadli Level 2, Halle (Saale), Germany
22 April 2024
nein Java bringt dir viel mehr und wenn du besser bezahlt werden willst mach Java, C oder C++
julia_preylowski Level 2, Germany, Germany
20 Januar 2024


julia_preylowski Level 2, Germany, Germany
20 Januar 2024
🧠🧠🧠🧠👀👀👁👁👀👁👁🧠👀
Franziska Level 7, Germany
6 Dezember 2023
Eine Methode ruft ihr doch die ganze Zeit schon auf. System.out.print() das was ihr an Text in die Klammer übergebt, wird ausgegeben. Wenn ihr jetzt eine Methode habt die multiplikation() heißt, in der zwei Werte miteinander multipliziert werden, dann übergebt ihr die wie in dem Beispiel sum(), wo zwei zahlen addiert werden. Diese mit Komma trennen sum(2,2) return 4
akitojya Level 2, Germany, Germany
22 Oktober 2023
Also hier wird überhaupt nichts erklärt, was davor immer vor den Aufgaben passiert ist.
Bernhard M Level 4, Germany, Germany
20 Dezember 2022
Warum soll man jetzt plötzlich wissen, wie eine Methode in einer anderen Methode aufgerufen wird ??!! Also bis hier war es klar und verständlich, aber nun machen wir irgendwie einen Sprung über etwas ! Not nice!
Lukas Level 9, Germany, Germany
13 Oktober 2023
google ist dein Bester Freund
30 Oktober 2023
Ist wirklich doof. Im worst case, gibst du es am besten in ChatGPT ein, das kann weiterhelfen
kimo Level 5, Hanover, Germany
9 Januar 2024
Ich hab bezahlt, um was zu googln? BruH
Roman Zwetzich Level 4, Biebertal, Germany
14 August 2022
Es ist so verwirrend, dass es so lange sehr einfache Aufgaben gibt und dann plötzlich so für Anfänger unmögliche Aufgaben kommen.
Anonymous #11051542 Level 5, Köln, Germany
12 August 2022
wieso sind die epic aufgaben hier drin? die kann man mit dem aktuellen wissensstand doch gar nicht lösen
5 August 2022
Bis zu dieser Lektion habe ich kaum einen Fehler gemacht und fand das Lehr- und Lerntempo perfekt✌ Allerdings musste ich mir bei beiden Epic-Aufgaben die Hinweise zur Hilfe nehmen. Ich wäre nie selbst auf die Lösung gekommen...😞 Sinnvoll wäre es, wenn vorher im Text bessere Beispiele kommen, die das alles erklären. Hier war ich etwas traurig, nicht die gewohnten Erfolgsergebnisse zu erhalten, sondern einfach mal keinen blassen Schimmer zu haben...
Pelikan Level 3, Schönebeck, Germany
8 Mai 2022
Naja die Angebote sind der Hammer und dazu kommt das andere Übungsseiten weit teurer sind.
mo zero Level 3, Germany
16 März 2022
You got me with the fruits xD
Anonymous #11119440 Level 2, Germany, Germany
20 Oktober 2022
tutti frutti