Unterschied zwischen Syntax und Semantik?
Hallo, kann mir jemand so simpel wie moeglich erklaeren was der Unterschied zwischen Syntax und Semantik in Java ist.
Ist eins davon, wie man den Code eingibt, formatiert... ? Und das andere ob es richtig ist, also wenn es der Compiler nimmt ist es richtig?
LG
3 Antworten
Wenn ein Programm syntaktisch korrekt ist, dann wird es vom Compiler übersetzt. Wenn es festgelegte Regeln der Sprache (bzgl. der Eingabe) bricht, dann resultiert das in einem Compile-time Fehler.
Semantisch korrekt ist ein Programm, wenn es tut, was es soll. Andernfalls ist es semantisch inkorrekt.
Gruß :)
Rein sprachlich bedeutet Syntax die Form, das Formale, Semantik steht für den Inhalt, die Bedeutung oder Funktion.
Wenn ich lings statt links schreibe, ist das syntaktisch falsch, also formal.
Wenn ich links statt rechts schreibe, ist das semantisch falsch, also inhaltlich, von der Bedeutung her.
Syntax ist wie man Sätze aufbaut, Semantik ob sie kontextmäßig korrekt benutzt werden/Sinn ergeben.
Beispiel:
Mein Hund Banane eine ist.
Syntaktisch nicht korrekt. Die Grammatik stimmt so nicht. Das ist kein gültiger Satz.
Mein Hund ist eine Banane.
Syntaktisch korrekt. Die Grammatik in diesem Satz stimmt.
Semantisch gesehen ergibt der Satz aber keinen Sinn.
Mein Hund ist ein Tier.
Syntaktisch und semantisch korrekt.