Was sind bei Java mit Klassen gemeint?

...komplette Frage anzeigen

4 Antworten

Der Klassenbegriff in Programmiersprachen steht im allgemeinen für (1):

etwas was das Verhalten von bestimmten Objekten beschreibt.
Diese Objekte nennt man "Instanzen der Klasse".
Ich schreibe bewusst "etwas", da in manchen Programmiersprachen Klassen wiederum Objekte (und damit Instanzen einer Metaklasse) sind, in anderen nicht (2).

Man darf also Instanz und Klasse nicht verwechseln.

Klassen beinhalten eine Liste von "Methoden" (manchmal auch "virtuelle Funktionen" gennant).
Diese beschreiben das Verhalten (beinhalten den Code) ihrer Instanzen.

Jedes Objekt hat eine (oft intern versteckte) Referenz auf ihre Klasse.
Wenn man nun eine Methode eines Objekts aufruft:
    obj.foo();
bestimmt die Klasse von "obj", welche Methode mit foo() ausgeführt wird.

Die 500 (inzwischen sind es viel mehr) Klassen, umfassen einige Standardpakete.
So finden sich in "java.*" Klassen, die eigentlich jeder braucht, und die allgemein nützlich sind. Diese sind insofern standardisiert, daß sie vom Hersteller mitgeliefert und gegebenenfalls erweitert werden. Der "normale" Java Programmierer muss sie so nehmen wie sie sind: er kann sie nicht erweitern.

Dazu kommen vom Programmierer selbst erstellte Klassen, die typischerweise das eigentliche Programm ausmachen; oder wiederum als Bibliothek nützliches für dritte beinhalten können.


[1] es gibt ein paar Ausnahme, auf die ich hier aber nicht eingehe

[2] In Java ist es ein Zwischending. Man kann sich zwar so etwas wie einen
"Mirror" oder Spiegel auf eine Klasse geben lassen (und dies sind dann
auch Instanzen von Class), sie sind aber nicht so generell und flexibel wie richtige Objekte. Z.B. gibt es bei denen dann keine weitere Vererbung, es gibt kein Metaklassenprotokoll, das man ändern könnte usw.
Daher der Begriff "Mirror" - es ist ein Spiegel zur Reflektion.

Antwort bewerten Vielen Dank für Deine Bewertung

Egal was du in Java benutzt, greift ja auf andere Klassen wiederum zu.

 dass es in Java Version 1.01 250 Klassen gab  
und in Version 1.1 500 Verschiedene Klassen ??

Genau.

Was genau sind mit DIESEN Klassen gemeint ?

Mit "DIESEN" Klassen ist die Klassen innerhalb des Frameworks gemeint.

Beispiele für diese Klassen, die du sicherlich auch kennst sind:

  1. Object
  2. String
  3. Integer
  4. Boolean
  5. ...

Genauso wurde ständig der Funktionsumfang von Java erweitert, sodass du z.B. Daten lesen und schreiben kannst, sprich die ganzen Reader und Writer Klassen in java.io.

Sämtliche  Klassen für die GUI wie awt/swing/(fx)

Entsprechend gibt es damit bei jeder Java Version einen größeren Funktionsumfang und folglich mehr Klassen

Antwort bewerten Vielen Dank für Deine Bewertung

Klassen sind die Bauanleitungen für Objekte. Das was in dem Text sind die Klassen des Java Frameworks. Also der Satz von Klassen, der mit dem Java SDK ausgeliefert wird. Java kommt ja nicht ohne irgendwelche Funktionen daher :) Gruß

Antwort bewerten Vielen Dank für Deine Bewertung

Das sind die Klassen in den packages, die du alle einbinden kannst!

Antwort bewerten Vielen Dank für Deine Bewertung

Was möchtest Du wissen?