1620 Begriffe aus IT, Netzwerk, Sicherheit und Programmierung: erst kurz erklärt, dann ausführlicher. Suche nach einem Wort oder wähle einen Buchstaben.
130 Treffer · die ersten 40
Das JVM-Prinzip ermöglicht "Write once, run anywhere" — derselbe Bytecode läuft auf jedem Betriebssystem, für das eine JVM existiert. Wird häufig für große Unternehmensanwendungen, Android-Apps (historisch) und Backend-Systeme genutzt. Kompiliert und ausgeführt wird sie mit Werkzeugen aus dem JDK.
Verwandt: C++ · Garbage Collector · JDK · Kotlin · OOP · Android
Ganzer Artikel im Wiki →Statt Schleifen mit Zwischenvariablen beschreibt man, was passieren soll (deklarativ). Ein Stream speichert keine Daten, er ist eine Beschreibung der Verarbeitung. Die Arbeit geschieht erst, wenn eine Endoperation aufgerufen wird („lazy").
Ganzer Artikel im Wiki →Alle Editionen nutzen dieselbe Sprache und dieselbe Virtuelle Maschine. Sie unterscheiden sich in den mitgelieferten Bibliotheken (APIs). SE ist die Grundlage, EE und ME bauen darauf auf oder schränken sie ein.
Verwandt: JDK · JRE (Java Runtime Environment) · Packages/API
Ganzer Artikel im Wiki →Der Compiler prüft dabei Syntax und Typen und meldet Fehler, bevor das Programm überhaupt läuft. Er erzeugt keinen Maschinencode für den Prozessor, sondern plattformunabhängigen Bytecode.
Verwandt: JRE (Java Runtime Environment) · Bytecode · Compiler · JIT-Compiler (Just-in-Time)
Ganzer Artikel im Wiki →Der Browser nennt dabei die Eigenschaft, zum Beispiel „reading 'length'“.
Verwandt: JS · TypeScript
Ganzer Artikel im Wiki →Zur Entwicklung braucht man das größere JDK, das die JRE und zusätzlich Werkzeuge wie javac enthält. Anwender, die ein Java-Programm nur starten wollen, brauchten früher nur die JRE.
Verwandt: JDK · Java-Editionen: SE, EE, ME und Jakarta EE · javac (Java-Compiler) · JVM (Java Virtual Machine)
Ganzer Artikel im Wiki →Die JVM verhält sich wie ein kleiner, abstrakter Computer mit eigenem Befehlssatz (Bytecode), eigenem Speichermodell und eigener Speicherverwaltung. Sie sitzt als Schicht zwischen Programm und Betriebssystem.
Verwandt: Garbage Collector · JRE (Java Runtime Environment) · Virtuelle Maschine (VM) · Bytecode
Ganzer Artikel im Wiki →Pakete ordnen Klassen, Module bündeln Pakete. Ein Modul legt in einer Datei module-info.java fest, was es braucht (requires) und was es nach außen anbietet (exports). Alles andere bleibt unsichtbar, selbst wenn es public ist.
Verwandt: Core · Packages/API · Zugriffsmodifikatoren
Ganzer Artikel im Wiki →Einer der häufigsten Java-Fehler.
Verwandt: Java · initialisieren · instanziieren · Fehlercodes
Ganzer Artikel im Wiki →Die meisten Fehler verraten sich selbst: Der Stacktrace nennt die Ausnahme, die Meldung und die Aufrufkette mit Datei und Zeile. Wer den lesen kann, löst einen Großteil der Probleme in Minuten.
Verwandt: Error Codes · Debugging · Exceptions
Ganzer Artikel im Wiki →Java ist streng typisiert. Manche Umwandlungen macht der Compiler selbst (sicher), andere muss man ausdrücklich verlangen (mit Risiko). Text und Zahlen wandelt man mit Methoden um, nicht mit Casts.
Verwandt: Numbers & Strings · Wrapper Classes · Type Casting
Ganzer Artikel im Wiki →Java setzt Abstraktion über zwei Mechanismen um: abstract class (kann sowohl fertige als auch offene, noch zu implementierende Methoden enthalten, aber selbst nicht direkt instanziiert werden) und Interface (reine Vertragsdefinition ohne eigenen Zustand). Beide zwingen Unterklassen, die offenen Methoden konkret zu implementieren.
Verwandt: Encapsulation · Interface · OOP · Java · Classes · List
Ganzer Artikel im Wiki →Java liefert viele Standardalgorithmen bereits fertig mit, z. B. Collections.sort(), Collections.binarySearch() oder Collections.max() — für gängige Aufgaben lohnt es sich selten, sie neu zu implementieren. Für eigene Algorithmen sind Zeit- und Platzkomplexität (Big-O-Notation) die zentralen Bewertungsmaßstäbe.
Verwandt: Data Structures · Recursion · Sorting · DSA (Data Structures & Algorithms) · Java
Ganzer Artikel im Wiki →Apps werden traditionell in Java oder (seit 2019 von Google empfohlen) Kotlin entwickelt, verpackt als APK. Weil viele Hersteller (Samsung, Xiaomi usw.) eigene Android-Varianten mit unterschiedlicher Hardware ausliefern, ist die Gerätefragmentierung bei Android deutlich größer als bei Apples einheitlicherem iOS-Ökosystem.
Verwandt: APK · iOS · Kotlin · Offline-First und Background Sync (PWA) · Smartphones · Tablets
Ganzer Artikel im Wiki →AngularJS führte Konzepte wie Zwei-Wege-Datenbindung und Direktiven im großen Stil ein, wurde aber 2022 offiziell eingestellt (End of Life). Der Nachfolger "Angular" (ohne "JS", ab Version 2) ist ein komplett neues, TypeScript-basiertes Framework ohne Rückwärtskompatibilität.
Ganzer Artikel im Wiki →Häufig genutzt für einmalige Event-Handler oder Callback-Implementierungen, bei denen sich eine separate, benannte Klasse nicht lohnt. Seit Java 8 übernehmen Lambda-Ausdrücke diese Rolle für funktionale Interfaces (Interfaces mit genau einer Methode) meist kompakter.
Verwandt: Inner Classes · Lambda · Interface · Java · Classes · Interface
Ganzer Artikel im Wiki →Zugriff per Index (get(i)) ist sehr schnell (konstante Zeit), Einfügen/Entfernen in der Mitte dagegen langsam, da nachfolgende Elemente verschoben werden müssen. Im Gegensatz zu einem klassischen Array muss die Größe nicht vorher feststehen.
Verwandt: Arrays · LinkedList · List · Java · For-Schleife · Generics
Ganzer Artikel im Wiki →Deklaration z. B. int[] zahlen = new int[5]; oder direkt mit Werten int[] zahlen = {1, 2, 3};. Der Zugriff erfolgt über einen nullbasierten Index. Wird eine variable Größe gebraucht, greift man in Java stattdessen zu ArrayList aus dem Collections-Framework.
Verwandt: ArrayList · For-Schleife · Index · Mehrdimensionale Arrays · Java · JSON
Ganzer Artikel im Wiki →Weil die Größe eines Arrays bei den meisten Sprachen von Anfang an feststehen muss, sind Arrays sehr schnell im Zugriff, aber unflexibel, wenn sich die Anzahl der Elemente zur Laufzeit ändern soll — dafür gibt es dynamisch wachsende Strukturen wie Java's ArrayList (siehe Dynamisches Array). Mehrdimensionale Arrays erweitern das Prinzip auf Tabellen oder Gitter (Array von Arrays).
Verwandt: Index · Data Structures (Datenstrukturen) · ArrayList (Dynamisches Array) · Mehrdimensionale Arrays · Java · Algorithms (Algorithmen)
Ganzer Artikel im Wiki →Eine als async markierte Funktion gibt ein Versprechen zurück (Promise, Future, Task). Mit await hält sie an dieser Stelle an und gibt die Kontrolle ab, bis das Ergebnis da ist – andere Aufgaben laufen in der Zwischenzeit. Das ist bequemer als verschachtelte Callbacks. Unterstützt wird es in JavaScript/TypeScript, Python, C#, Kotlin (Coroutinen), Rust, Swift, Dart und weiteren.
Verwandt: Callback · Event Loop (Ereignisschleife) · Thread (Faden) · Exceptions · Threads (Nebenläufigkeit)
Ganzer Artikel im Wiki →Innerhalb einer Instanzmethode weiß das Objekt über this, wer es selbst ist. Das braucht man vor allem, um ein Attribut von einem gleichnamigen Parameter zu unterscheiden, und um das Objekt selbst weiterzugeben.
Verwandt: Setter · Constructors (Konstruktoren) · super-Keyword · this-Keyword
Ganzer Artikel im Wiki →Besteht im Kern aus einer Rendering-Engine (baut aus HTML/CSS das sichtbare Layout) und einer JavaScript-Engine (führt Skripte aus). Bekannte Vertreter: Google Chrome, Mozilla Firefox, Apple Safari, Microsoft Edge.
Verwandt: HTTPS · Apple Safari · Browser-Tab · Browser-Verlauf · Google Chrome · HTML
Ganzer Artikel im Wiki →Sie liest den Code, baut daraus den DOM-Baum, berechnet das Layout (wo steht was) und zeichnet die Seite. Dazu kommt eine JavaScript-Engine, die den Script-Code ausführt.
Verwandt: Webbrowser · Browser · HTML
Ganzer Artikel im Wiki →Die meisten einfachen Browserspiele zeichnen auf ein <canvas>-Element, das eine Pixelfläche bereitstellt. Ein Spiel besteht im Kern aus einer Spielschleife (Game Loop): Sie liest Eingaben, aktualisiert den Spielzustand (Positionen, Punkte, Kollisionen) und zeichnet das Bild neu — im Browser typischerweise über requestAnimationFrame etwa 60-mal pro Sekunde.
Verwandt: Content Security Policy (CSP) · XSS (Cross-Site Scripting) · Browser · CSS · HTML · Caching
Ganzer Artikel im Wiki →Wird selten explizit genutzt außer bei speicherkritischen Anwendungen (z. B. große Arrays) oder beim Verarbeiten roher Binärdaten (z. B. Byte-Streams beim Dateizugriff). Rechenoperationen mit byte-Werten liefern in Java als Zwischenergebnis automatisch int, ein Rückcast ist dann oft nötig.
Verwandt: long · short · Type Casting · Bits · Java · Arrays
Ganzer Artikel im Wiki →Java-Programme werden zu .class-Dateien (JVM-Bytecode), C# zu IL für die CLR, Python zu .pyc-Dateien. Dank Bytecode läuft dasselbe Programm auf jedem System, auf dem die virtuelle Maschine installiert ist („write once, run anywhere“). Die VM führt den Code entweder interpretiert oder über JIT-Compilation aus.
Verwandt: Compiler · Interpreter · JIT-Compiler (Just-in-Time) · Assembly · javac (Java-Compiler) · JVM (Java Virtual Machine)
Ganzer Artikel im Wiki →In C verwaltet man Speicher manuell (Zeiger/Pointer, malloc/free) — es gibt keinen Garbage Collector wie in Java. Das macht C extrem performant und kontrollierbar, aber auch fehleranfällig (Speicherlecks, Buffer Overflows). Bis heute die Sprache der Wahl für Betriebssystemkerne, Treiber und eingebettete Systeme.
Verwandt: C++ · Rust · Mikrocontroller · Assembly · Code · Garbage Collector
Ganzer Artikel im Wiki →Syntaktisch eng an Java und C++ angelehnt (geschweifte Klammern, statische Typisierung), aber mit modernen Spracherweiterungen wie LINQ, async/await und Nullable-Reference-Types. Wird vor allem für Windows-Anwendungen, Unity-Spieleentwicklung und Backend-Dienste mit ASP.NET eingesetzt.
Verwandt: ASP · C++ · Java · WPF
Ganzer Artikel im Wiki →Eine Klasse selbst ist noch kein konkretes Objekt, sondern die Vorlage, aus der über new beliebig viele Objects erzeugt werden können, die jeweils eigene Werte für die Felder tragen. In Java lebt pro Datei üblicherweise genau eine öffentliche Klasse, benannt wie die Datei selbst.
Verwandt: Constructors · Encapsulation · Methods · Modifiers · Objects · OOP
Ganzer Artikel im Wiki →Closures entstehen, wenn eine innere Funktion auf Variablen der äußeren zugreift und zurückgegeben oder weitergereicht wird. Sie sind die Grundlage für Zähler, Fabriken, Callbacks, Teilanwendung (Currying) und das Modul-Muster in JavaScript. Unterstützt werden sie von JavaScript, Python, Java (Lambda-Ausdrücke), C#, Go, Kotlin, Swift, Rust, Haskell und vielen weiteren.
Verwandt: Callback · Currying · Higher-Order-Funktion (Funktion höherer Ordnung) · Decorator-Muster (Dekorierer) · Encapsulation (Kapselung) · Lambda (Lambda-Ausdruck)
Ganzer Artikel im Wiki →Umfasst je nach Kontext unterschiedliche Stufen: Quellcode (von Menschen lesbarer Programmtext), Maschinencode (direkt vom Prozessor ausführbare Bytes) oder Bytecode (Zwischenform, z. B. bei Java). Wird durch einen Compiler oder Interpreter von einer Stufe in die nächste überführt.
Verwandt: Quellcode · Drizzle ORM · Neon Auto-Suspend · next-intl · Cron Job (Vercel) · JSONL (JSON Lines)
Ganzer Artikel im Wiki →Anders als Arrays haben Collections keine feste Größe und bieten fertige Methoden für Sortieren, Suchen und Filtern. Seit Java 5 sind Collections generisch (siehe Generics) — List<String> erzwingt zur Compile-Zeit, dass nur String-Objekte hineinkommen, statt Typfehler erst zur Laufzeit zu entdecken.
Verwandt: Generics · Iterator · List · Set · Java · Advanced Sorting
Ganzer Artikel im Wiki →Wichtige Falle in Java: == vergleicht bei Objekten (z. B. String) die Referenz, nicht den Inhalt — zwei inhaltlich gleiche Strings können mit == trotzdem false liefern, wenn es unterschiedliche Objekte im Speicher sind. Für den Inhaltsvergleich von Objekten gehört stattdessen .equals() genutzt.
Verwandt: if-Statement · Logical Operators · Operatoren · Java · Strings
Ganzer Artikel im Wiki →Dabei prüft er Syntax und (bei statisch typisierten Sprachen) Typen und meldet Fehler schon vor dem Start. Das Ergebnis läuft anschließend ohne weitere Übersetzung. Compiler-Sprachen sind unter anderem C, C++, Rust, Go, Pascal und Fortran; Java und C# kompilieren zu Bytecode (Bytecode), den eine virtuelle Maschine ausführt.
Verwandt: Bytecode · Interpreter · JIT-Compiler (Just-in-Time) · Quellcode · Visual Studio · javac (Java-Compiler)
Ganzer Artikel im Wiki →Konstanten machen Code sicherer und lesbarer: der Compiler verhindert versehentliches Überschreiben, und ein aussagekräftiger Name (z. B. MAX_RETRIES) ersetzt "magische Zahlen" im Code. Konvention in vielen Sprachen: Konstanten komplett in Großbuchstaben mit Unterstrichen schreiben (SCREAMING_SNAKE_CASE).
Verwandt: Declaring Variables (Variablendeklaration) · Code · Identifiers (Bezeichner) · Java · Enum · Modifiers
Ganzer Artikel im Wiki →Der Konstruktor trägt immer denselben Namen wie die Klasse und hat keinen Rückgabetyp (auch nicht void). Definiert eine Klasse keinen eigenen Konstruktor, erzeugt Java automatisch einen leeren Standardkonstruktor. Konstruktoren können, wie normale Methoden, per Overloading mehrfach mit unterschiedlichen Parametern definiert werden.
Verwandt: Classes · Objects · Overloading · this-Keyword · Java · Encapsulation
Ganzer Artikel im Wiki →Da HTTP von Natur aus zustandslos ist (jede Anfrage ist unabhängig, der Server "erinnert" sich nicht), braucht es einen Mechanismus, um einen Nutzer über mehrere Anfragen hinweg wiederzuerkennen — dafür wurden Cookies erfunden. Wichtige Sicherheitsattribute: HttpOnly (nicht per JavaScript auslesbar, schützt vor XSS-Diebstahl), Secure (nur über HTTPS gesendet) und SameSite (schränkt ein, bei welchen websiteübergreifenden Anfragen der Cookie mitgeschickt wird, schützt vor CSRF).
Verwandt: HTTP · Session · Cookie-Einwilligung (TDDDG) · HTTPS · Request · CSRF (Cross-Site Request Forgery)
Ganzer Artikel im Wiki →Das Wort ist mehrdeutig, der Zusammenhang entscheidet. In Java meint man mit den „Core-Klassen" die Grundbausteine, die jedes Programm braucht und die ohne Import verfügbar sind: das Paket java.lang.
Verwandt: Modularität in Java · Packages/API · Wrapper Classes
Ganzer Artikel im Wiki →createNewFile() gibt false zurück (statt einer Exception), wenn die Datei bereits existiert — leicht zu übersehen, wenn man nur auf Exceptions prüft. Files.createFile(path) aus java.nio.file wirft dagegen eine FileAlreadyExistsException, was Fehler beim Testen eher auffallen lässt.
Verwandt: Files · Write Files · Exceptions · try-with-resources
Ganzer Artikel im Wiki →