MiniJavaCompiler/doc/features.tex
2024-06-28 11:01:17 +02:00

34 lines
1.3 KiB
TeX

\section{Sprach-Features}
\begin{itemize}
\item Klassen
\item Felder
\item Methoden (mit Parametern)
\item Konstruktoren (mit Parametern)
\item Standardkonstruktoren
\item Lokale Variablen
\item Zuweisungen (Feld- und lokale Variablen)
\item Arithmetik (\texttt{+, -, *, /, \%,} Klammern, Korrekte Operations-Präzedenz)
\item Arithmetische Zuweisungen (\texttt{+=, -=, *=, /=, \%=, \&=, |=, \^{}=})
\item Vergleichsoperationen (\texttt{<, >, <=, >=, ==, !=})
\item Boolsche Operationen (\texttt{||, \&\&})
\item Unäre Operationen (\texttt{-, ~})
\item Binar-Operationen (\texttt{\&, |, \^})
\item Pre/Post-Inkrement \& Dekrement
\item Kontrollflussstrukturen:
\begin{itemize}
\item If/Else
\item While
\item For
\item Return (mit/ohne Rückgabewert)
\end{itemize}
\item Default-Werte für alle Klassenfelder
\item Mehrere Klassen in einer Datei
\item Implizites \texttt{this}
\item Beliebig verschachtelte Namensketten
\item Beliebige Deklarationsreihenfolge
\item Literale für Integer, Characters, Booleans
\item Platzhalter/Separatoren in Integerliteralen (z.B. \texttt{1\_000\_000})
\item Deklaration und Zuweisung in einer Anweisung
\item Beliebig verschachtelte Blöcke
\item Überladung von Methoden \& Konstruktoren
\end{itemize}