Glossar zu Fachbegriffen der Programmierung in Java GK 10 Informatik 2010/11 ASCII-Code (American Standard Code for Information Interchange) Beim ASCII-Code handelt es sich um eine Zuordnung, die es ermöglicht, Zeichen in Form von Zahlen darzustellen. Jedes Zeichen aus dem ASCII-Code besitzt eine eindeutige Nummer, mit der es möglich ist, Buchstaben, Ziffern und Sonderzeichen darzustellen. [Sebastian] Boolescher Ausdruck Boolesche Ausdrücke sind solche, die zu einem Wahrheitswert auswertet werden können, dass heißt, es wird „true“ oder „false“ ausgegeben. Als Operatoren können hierbei die Vergleichsoperatoren dienen: == … gleich != … ungleich < … kleiner > … größer <= … kleiner-gleich und >= … größer-gleich Außerdem können Boolesche Operatoren, die auf Booleschen Ausdrücken operieren, angewendet werden. && … und: Nur wenn die Booleschen Ausdrücke links und rechts von && beide true liefern, ist der Gesamtausdruck ebenfalls true, ansonsten ist er false. || … oder: Wenn mindestens einer der beiden Booleschen Ausdrücke links oder rechts von || den Wert true liefert, ist der Gesamtausdruck ebenfalls true, ansonsten ist er false. ! … nicht: Der Boolesche Ausdruck hinter dem ! wird negiert, d.h. ins Gegenteil verwandelt. [Michael] Datenfeld Sind die globalen Variablen (Attribute) in einer Klasse. Durch diese werden Objekte der Klasse charakterisiert, z.B. die Länge und die Breite eines Objektes der Klasse Rechteck. Die Datenfelder werden entsprechend der Konvention zwischen dem Klassenname public class xXx und dem Konstruktor public xXx() positioniert. [Josua] Elementare Datentypen byte = Ganzzahl (ohne Nachkommastellen ; byte); wird verwendet, um eine Variable als ganze Zahl zu deklarieren (8 Bit) short = Ganzzahl (ohne Nachkommastellen ; short integer); wird verwendet, um eine Variable als ganze Zahl zu deklarieren (16 Bit) int = Ganzzahl (ohne Nachkommastellen ; integer); wird verwendet, um eine Variable als ganze Zahl zu deklarieren (32 Bit) long = Ganzzahl (ohne Nachkommastellen ; long integer); wird verwendet, um eine Variable als ganze Zahl zu deklarieren (64 Bit) char = Zeichen (character); wird verwendet, um eine Variable als ein einzelnes Zeichen (z.B. Buchstabe, Ziffer, Sonderzeichen etc.) aus dem verwendeten Zeichensatz (z.B. ASCII, ANSI, Unicode etc.) zu deklarieren (16 Bit). String ist in Java kein elementarer Datentyp, sondern stellt einen Objekttyp. Objekttypen werden durch Klassen definiert. float = Gleitkommazahl; wird verwendet, um eine Zahl mit Nachkommastellen zu deklarieren (32 Bit) double = Gleitkommazahl; wird verwendet, um eine Zahl mit Nachkommastellen zu deklarieren (64 Bit) boolean = Wahrheitswert (false or true); wird verwendet, um etwas als wahr oder falsch zu deklarieren [Henrik] Deklaration Die Deklaration ist die Festlegung eines (Daten-)Typs für Variablen. Durch die Deklaration wird der benötigte Speicherplatz reserviert. [Cindy] do-while-Schleife Aufbau: do{ Anweisungsblock (hier stehen Anweisungen drin) } while (Bedingung); Funktion: Im Gegensatz zur while-Schleife wird jetzt als erstes der Anweisungsblock in der do-Schleife durchgeführt und dann wird erst kontrolliert, ob die Bedingung erfüllt ist. Diese Schleife wird, genauso wie bei der while-Schleife, solange durchgeführt, bis die Bedingung nicht mehr erfüllt ist. [Lukas] (Programm-)Fehler 1. Übersetzungsfehler: 2. Laufzeitfehler: anwendet, tritt ein Fehler auf. 3. Logische Fehler: Syntaktische Fehler: Zeichen vergessen wie z.B. ; oder {}. Semantische Fehler: z.B. String-Variablen wird ein int zugewiesen Bei der Übersetzung ist alles richtig, aber wenn man das Programm Das Programm kann fehlerfrei übersetzt werden und stürzt auch nicht während des Betriebs ab. Inhaltlich liefert das Programm aber ungewollte Ergebnisse. Z.B. der Umfang eines Rechecks wird fehlerhaft durch a mal b berechnet.. Die Fehler kann man lösen, indem man zum Beispiel den Text mit „//“ auskommentiert und Zeile für Zeile kontrolliert, was daran falsch sein könnte. Außerdem können Fehlermeldungen des Übersetzers berücksichtigt, Testausgaben (mit System.out.print) ausgegeben und der Debugger verwendet werden. [Jana] GUI Abkürzung für den englischen Begriff Graphical User Interface, dass heißt übersetzt soviel wie grafische Benutzeroberfläche. Damit ist eine Softwarekomponente gemeint, die man mit der Maus steuern kann, sie ist aufgebaut mit Buttons, Icons, Menüs etc. [Jennifer] Initialisierung Nachdem eine Variable deklariert worden ist, folgt die Initialisierung, d.h. ihr wird ein Wert zugeordnet. Dabei ist darauf zu achten, sich an den Typ der Variable zu halten, d.h. keinem Integer ein String zuzuordnen. Beispiel: int i=0. [Hannah] Konstruktor In der objektorientierten Programmierung lassen sich spezielle Methoden definieren, die bei der Initialisierung eines Objekts aufgerufen werden: die Konstruktoren. In Java werden Konstruktoren als Methoden ohne Rückgabewert definiert, die den Namen der Klasse erhalten, zu der sie gehören. Konstruktoren dürfen eine beliebige Anzahl an Parametern haben. [Sebastian] Konvention Klassennamen beginnen mit einem Groß- und die Objektnamen mit einem Kleinbuchstaben. Methodennamen und Variablenbezeichner werden ebenfalls klein geschrieben. [Cindy] lokale Variable Eine lokale Variable ist eine Variable, die innerhalb einer Methode (einer Umgebung - z.B. for-Schleife) deklariert und benutzt wird. Sie ist nur innerhalb der Methode (Umgebung) zugreifbar und ihre Lebensdauer entspicht der ihrer Methode (Umgebung). [Linda+ „Java lernen mit BlueJ“] Methode Operation, die für die Objekte einer Klasse angewandt werden kann. Wird auch als Dienst bezeichnet. Man unterscheidet zwischen sondierenden Methoden (Anfragen) und verändernden Methoden (Aufträgen). [Daniel] null Das Java-Schlüsselwort hat die Bedeutung von „kein Objekt“. null wird in einer Objektvariablen gespeichert, die nicht auf ein konkretes Objekt verweist. Eine Objektvariable, die nicht exlizit initialisiert wurde, erhält als Standardwert ebenfall null. [„Java lernen mit BlueJ“ ] Parameter: Stehen bei einer Methode/einem Konstruktor hinten in den Klammern und legen fest, welche Werte der Methode/dem Konstruktor übergeben werden. Als formale Parameter werden die Parameter bei der Definition einer Methode/Konstruktor bezeichnet. Beispiel: farbeAendern(String farbe){ … } Hier ist farbe der formale Parameter vom Typ String. Als aktuelle Parameter werden die konkreten Werte beim Aufruf einer Methode/eines Konstruktors mit Paramertern bezeichnet: Beispiel: fenster.farbeAendern(„Blau“); Hier ist Blau der aktuelle Parameter. [Josua] Private Private verbietet jeglichen Zugriff von außerhalb auf die Klasse. Auf eine private Variable kann nur die Klasse selbst zugreifen, ebenso auf einen privaten Konstruktor/ Methode/ geschachtelter Datentyp. Klassenvariablen werden üblicherweise als private deklariert. [Jennifer] Public Durch public kann jede Klasse (jedes Objekt) auf die Variable oder ähnliches zugreifen. Public findet man häufig bei wichtigen Methoden, die von anderen Klassen (Objekten) verwendet werden soll. [Jennifer] Punktoperator Wendet die Methode des Typs auf den Bezeichner an: Objektname.Methodenname Ermöglicht den Zugriff auf Attribute eines Objekts Objektname.Attributname (Ist (in der Regel) nur dann möglich, wenn die Attribute bzw. Methoden public sind.) [Daniel] Return-Anweisung/Rückgabewert Die return-Anweisung steht immer am „Ende“ einer Methode. Sie dient dazu, einen Wert auszugeben. Sollte noch etwas nach der return-Anweisung stehen, kommt die Fehlermeldung „unreachable Statement“, da die Methode mit der return-Anweisung beendet ist. [Marvin] Stringoperationen x.charAt(i): Liefert das Zeichen aus dem String "x" an der Position "i" zurück. x.toUpperCase(): Liefert den String "x" in Großbuchstaben zurück. x.length(): Liefert die Länge des Strings "x" zurück. x1.equals(x2): Überprüft, ob der String "x1" und der String "x2" gleich sind. (Bitte dem "==" vorziehen). [Robin] System.out.print ist eine Methode, die Zahlen, Zeichenketten, u.a. in der Konsole ausgibt. Beispiele: System.out.print(“Fehler“). Auch Variablen können ausgegeben werden, wenn x=4 wird mit System.out.print(x) in der Konsole 4 ausgegeben. Neben System.out.print gibt es aus die Methode System.out.println, welche genauso funktioniert, allerdings nach jeder Ausgabe einen Zeilenumbruch einfügt. [Hannah] UML- Klassendiagramm Beispiel der Klasse Zeichnung. Zeichnung ------------------wand : Quadrat -fenster : Quadrat -dach : Dreieck -sonne : Kreis -----------------+zeichne(): void +inSWAendern(): void +inFarbeAendern(): void Erläuterungen hierzu: Zugriffsmodifikatoren - = private//+=public Attributname Typ des Attributs Methodenname () Parameterliste hier: leer Rückgabetyp: hier void, d.h. keine Rückgabe [Jana] while-Schleife Aufbau: while (Bedingung) { Anweisungsblock (hier stehen Anweisungen drin) } Funktion: Also solange die Bedingung in der while-Schleife erfüllt ist, werden die Anweisung oder die Anweisungen, die im Anweisungsblock stehen, wiederholt. Man sollte in den Anweisungsblock immer eine Abbruchbedingung rein implementieren, da es sonst zu einer Endlosschleife kommt und dies kann zum Abstürzen des Computers führen. [Lukas] Zuweisungsoperator (=) Syntax: Variable = Ausdruck ; Der Variablen auf der linken Seite des Zuweisungsoperators wird der Wert zugewiesen, den der Ausdruck auf der rechten Seite liefert. Der Ausdruck wird vollständig ausgewertet, bevor die Zuweisung durchgeführt wird. Erst nach dem Auswerten des Ausdrucks kopiert der Zuweisungsoperator das Ergebnis in die Variable. Der Zuweisungsoperator ist kein mathematisches Gleichheitszeichen. [Tobias]