Verständnis Klassen

Status
Nicht offen für weitere Antworten.
R

Reap

Gast
Also soweit ich Klassen verstanden habe sind Klassen im Grunde dasselbe wie Datentypen, nur dass sie aus verschiedenen Datentypen bestehen können. Wenn ich nun auf die einzelnen Typen zugreifen will muss ich ein Objekt erzeugen oder? Checke dass nicht so ganz.
 

meez

Top Contributor
Genau...
Jede Klasse ist gleichzeitig ein Datentyp...Da eine Klasse nur eine Art Schablone ist, musst du zuerst ein Objekt mit dieser Schablone erstellen, um sie zu benutzten...
 

L-ectron-X

Gesperrter Benutzer
Klassen sind sowas wie Baupläne für Objekte. Klassen beschreiben also Eigenschaften und Funktionen an Hand von Variablen und Methoden. Ein Objekt ist eine manifestierte Klasse, also etwas, was vom Reißbrett in die Produktion gegangen ist und nun benutzt werden kann. Objekte sind benutzerdefinierte Datentypen.
Wenn Du auf (private) Variablen eines Objektes zugreifen möchtest, geschieht das im Allgemeinen über (public) Methoden. Methoden werden in diesem Fall auf einer Instanz (Objekt) aufgerufen. Also musst Du ein Objekt erzeugen, um auf seine Methoden Zugriff zu bekommen.
 
B

bygones

Gast
L-ectron-X hat gesagt.:
Klassen sind sowas wie Baupläne für Objekte. Klassen beschreiben also Eigenschaften und Funktionen an Hand von Variablen und Methoden. Ein Objekt ist eine manifestierte Klasse, also etwas, was vom Reißbrett in die Produktion gegangen ist und nun benutzt werden kann. Objekte sind benutzerdefinierte Datentypen.
Wenn Du auf (private) Variablen eines Objektes zugreifen möchtest, geschieht das im Allgemeinen über (public) Methoden. Methoden werden in diesem Fall auf einer Instanz (Objekt) aufgerufen. Also musst Du ein Objekt erzeugen, um auf seine Methoden Zugriff zu bekommen.
schöne Erklärung :toll:
 

foobar

Top Contributor
Eine Klasse ist ein Bauplan und ein Objekt ist eine konkrete Instanz dieses Bauplans. Eine Klasse definiert bestimmte Eigenschaften (Member) und Aktionen (Methoden).
Beispiel:

Klasse:
Code:
public class Person
{
   private String name;
  
  public Person(String name)
  {
     this.name = name;
  }   

   public String getName()
   {
      return this.name;
   }
}

Objekt:
Code:
Person hans = new Person("hans");
 
R

Reap

Gast
Danke für die Antworten, nun aber noch ein paar Fragen

Beispiel:
Code:
class Date{
       int day;
       String month;
       int year;
}

Die verschiedenen Datentypen int und String sind sozusagen die Baupläne für das Objekt. Wenn ich nun schreibe:


Date x

so erzeuge ich eine Variable x mit dem Datentyp Date welche aber nirgends hinzeigt oder? Also muss ich zuerst ein Objekt erzeugen wo ich meine Werte die ich für day, month und year eingeben möchte hinspeichern kann. Ich muss auch ein Objekt erzeugen dass ich überhaupt auf die Datentypen zugreifen kann. Also wenn ich nur

Date x

schreibe, dann hab ich zwar eine Variable vom Datentyp Date kann aber nichts damit anfangen.

Wenn ich nun Date x = new Date() schreibe erzeuge ich ein Objekt, von dem ich aus auf day month und year zugreifen kann. Also gehören Objekte und Klassen unwiderruflich zusammen, oder kann man Objekte auch für ganz normale nicht durch eine Klasse erzeugten Datentypen wie int, String erzeugen ?


andere Frage:

L-ectron-X hat gesagt.:
Wenn Du auf (private) Variablen eines Objektes zugreifen möchtest, geschieht das im Allgemeinen über (public) Methoden. Methoden werden in diesem Fall auf einer Instanz (Objekt) aufgerufen. Also musst Du ein Objekt erzeugen, um auf seine Methoden Zugriff zu bekommen.

Was sind meine Variablen im Objekt
z.b.: x.month = "November" ?

Muss ich auf sie zugreifen wenn ich z.b. die Variablen am Bildschirm erscheinen lassen will, und das kann dann nur über Methoden, ähnlich den Strings passieren?
 
R

Reap

Gast
Sind Datenstrukturen mehrere zusammenhängende Objekte wo manche Objekte quasi die Funktion des Zeigers übernehmen?
 

L-ectron-X

Gesperrter Benutzer
Ein Bauplan für ein Auto beschreibt, aus welchen Teilen oder Baugruppen ein Auto besteht. Dabei ist z.B. der Motor oder der Fahrersitz eine Baugruppe eines Autos. Eine Baugruppe besteht wiederum aus mehreren Teilen.
Ebenso kann eine Klasse aus verschiedenen Klassen zusammen gesetzt sein, um am Ende eine bestimmte Funktionalität bereit stellen zu können.
Im Gegensatz zu C/C++ gibt es in Java gibt es keine Zeiger. Grob gesagt sind Zeiger in C/C++ Variablen, die auf eine bestimmte Speicheradresse zeigen, in der ein Wert eines bestimmten Datentyps liegt. Eine ähnliche Funktion haben Referenzen in Java. Referenzvariablen zeigen auf Objekte im Heap (ein Speicherbereich der VM).
Code:
Auto meinAuto = new Auto();
new erzeugt durch Aufruf des Konstruktors der Klasse Auto ein Objekt vom Typ Auto auf dem Heap und speichert eine Referenz (eine Art Zeiger) auf dieses Objekt in der Referenzvariablen meinAuto vom Typ Auto ab.
Diese Referenzvariable kann nun die Methoden des Objektes vom Typ Auto aufrufen.
Code:
meinAuto.rechtsBlinken();
Man muss unterscheiden zwischen den primitiven Datentypen z.B. int, long, byte, short, char, boolean, double, float und den Objekten, also den benutzerdefinierten bzw. komplexen Datentypen.
Im Gegensatz zu Objekten haben primitive Datentypen keine Methoden und Variablen, sondern nur einen Wertebereich, für den sie stehen. Z.B int für ganze Zahlen zwischen -2147483648 bis 2147483647.
Sie stellen quasi die kleinsten nicht weiter zerlegbaren Teile des Autos dar. Vergleichbar etwa mit einer Schraube oder einer Mutter.
Jeder primitive Datentyp hat in Java auch eine so genannte Wrapperklasse. Die Wrapperklasse erlaubt ein komfortables, unkompliziertes Arbeiten mit dem primitiven Datentyp. Für den Datentyp int ist es bspw. die Klasse Integer, für double ist es Double usw.
String ist kein primitiver Datentyp sondern eine mächtige Klasse mit sehr nützlichen Methoden.
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
C Klassen/Objekte Verständnis Java Basics - Anfänger-Themen 8
M Verständnis-Probleme mit eigenen Klassen Java Basics - Anfänger-Themen 2
M Klassen und Objekte => richtiges Verständnis? Java Basics - Anfänger-Themen 6
K Verständnis Problem bei Server/Client Java Basics - Anfänger-Themen 2
N Verständnis Frage zu Variablen Java Basics - Anfänger-Themen 3
KogoroMori21 Polymorphie-Verständnis Java Basics - Anfänger-Themen 5
S Verständnis-Frage zu einer HÜ? Java Basics - Anfänger-Themen 1
NeoLexx equals()-Methode Verständnis Frage anhand Code Beispiel Java Basics - Anfänger-Themen 22
B Frage zum Code verständnis im Resultat Java Basics - Anfänger-Themen 10
T Methoden Verständnis Java Basics - Anfänger-Themen 14
M Java Code Verständnis Java Basics - Anfänger-Themen 4
M Java Code Verständnis Java Basics - Anfänger-Themen 2
M Fehlendes Verständnis für dynamische Bindung und Vererbung Java Basics - Anfänger-Themen 13
K nur für das verständnis Java Basics - Anfänger-Themen 3
B Verständnis Frage zu der Aufgabe Java Basics - Anfänger-Themen 30
S Verständnis Vererbung Java Basics - Anfänger-Themen 3
J Code Verständnis Java Basics - Anfänger-Themen 9
B Problem beim grundsätzlichen Verständnis bei Rekursion mit 2-dimensionalen Array Java Basics - Anfänger-Themen 6
Y MVC MouseEvent Verständnis Java Basics - Anfänger-Themen 24
W Verständnis Probleme bei der while-Schleife und continue Java Basics - Anfänger-Themen 21
M If Verständnis Problem Java Basics - Anfänger-Themen 2
J Verständnis Problem Java-Listener. Java Basics - Anfänger-Themen 59
D Hilfe bei Verständnis von Aufgabe Java Basics - Anfänger-Themen 1
I Verständnis Frage wegen einer Aufgabe Java Basics - Anfänger-Themen 10
P verständnis Frage Refernzen und Objekte Java Basics - Anfänger-Themen 1
S Verständnis - Frage mehrere SQL Statements in While Schleife Java Basics - Anfänger-Themen 0
J java syntax verständnis Java Basics - Anfänger-Themen 6
M Verständnis von Deadlocks Java Basics - Anfänger-Themen 2
O Singleton Verständnis Java Basics - Anfänger-Themen 4
C Allgemeines Verständnis For-Schleife Java Basics - Anfänger-Themen 3
vodkaz For Schleife Verständnis Problem Java Basics - Anfänger-Themen 4
R Input/Output MVC - Frage zum Verständnis Java Basics - Anfänger-Themen 5
G regex Verständnis Problem Java Basics - Anfänger-Themen 3
B Hilfe beim Verständnis zu Generics Java Basics - Anfänger-Themen 7
J Musterlösung Verständnis Frage zu Math.abs() Java Basics - Anfänger-Themen 5
R RandomAccessFile verständnis Problem Java Basics - Anfänger-Themen 10
M Erste Schritte Verständnis Problem Konstruktoren Java Basics - Anfänger-Themen 13
X Kompilat verständnis Frage Java Basics - Anfänger-Themen 9
C Input/Output Anfänger Array-Verständnis Frage Java Basics - Anfänger-Themen 7
H Überladen Verständnis Java Basics - Anfänger-Themen 3
J Compiler-Fehler Verständnis Problem bei Compiler-Warning Java Basics - Anfänger-Themen 7
E Verständnis zu einem Rekursionsbeispiel Java Basics - Anfänger-Themen 12
F Verständnis Frage - && Java Basics - Anfänger-Themen 2
S Timer / Schleifen Verständnis Problem Java Basics - Anfänger-Themen 3
O Frage zu Verständnis von Collection Java Basics - Anfänger-Themen 4
JavaKaffee Minimax-Algorithmus Verständnis Java Basics - Anfänger-Themen 12
C Methoden Frage zu Verständnis eines Beispiels Java Basics - Anfänger-Themen 3
M Polymorphie Cast:Verständnis und Ausführung Java Basics - Anfänger-Themen 10
M Verständnis Frage Java Basics - Anfänger-Themen 11
T Verständnis von "final" und "static" Java Basics - Anfänger-Themen 6
U ADT verständnis Problem Java Basics - Anfänger-Themen 18
S Java Verständnis Problem Methoden etc. Java Basics - Anfänger-Themen 22
F ArrayList() Verständnis Java Basics - Anfänger-Themen 14
M Verständnis von PrintWriter Java Basics - Anfänger-Themen 12
M Verständnis einiger Zeilen Java Basics - Anfänger-Themen 4
P Codeschnipsel Verständnis Problem (Array) Java Basics - Anfänger-Themen 6
F Groovy Verständnis ConfigSlurper Java Basics - Anfänger-Themen 7
H Verständnis Strategy Pattern Java Basics - Anfänger-Themen 4
A Dringende Bitte um Erklärungen zum besseren Verständnis Java Basics - Anfänger-Themen 4
J Verständnis Problem mit return --> Klausuraufgabe Java Basics - Anfänger-Themen 4
deimosmuc Hilfe zum Verständnis bei Vererbung Java Basics - Anfänger-Themen 11
T Verständnis-Frage Java Basics - Anfänger-Themen 2
F (Verständnis)Problem: Zahl auf 2 Nachkommastellen runden Java Basics - Anfänger-Themen 5
E Verständnis frage zum return wert eines Arrays Java Basics - Anfänger-Themen 7
S Frage zu Verständnis und Logik Java Basics - Anfänger-Themen 5
P Verständnis bzgl. MVC Java Basics - Anfänger-Themen 11
B Exception verständnis Problem Java Basics - Anfänger-Themen 2
V KSKB zum Verständnis von Graphics und paintComponent Java Basics - Anfänger-Themen 6
A Array Verständnis Frage Java Basics - Anfänger-Themen 4
L Hashtable Verständnis Frage Java Basics - Anfänger-Themen 4
M Verständnis-Problem Java Basics - Anfänger-Themen 4
H Verständnis: Methode Java Basics - Anfänger-Themen 2
Z Verständnis Java Basics - Anfänger-Themen 4
R Verständnis Java Basics - Anfänger-Themen 4
R Verständnis bei Listen Java Basics - Anfänger-Themen 2
J Methodenaufrufe abstrakte Klassen, Interfaces Java Basics - Anfänger-Themen 17
M Abstrakte Klassen - Notation Java Basics - Anfänger-Themen 9
Detlef Bosau Nachladen von Klassen zur Laufzeit Java Basics - Anfänger-Themen 24
M Anonyme Klassen - Warum wird in der Konsole nichts ausgegeben? Java Basics - Anfänger-Themen 1
MoxMorris Einige Methoden aus verschiedenen Klassen nacheinander auszuführen läuft seltsam Java Basics - Anfänger-Themen 2
I Klassen von einem package laden, Statisches Feld auslesen und Objekt erstellen Java Basics - Anfänger-Themen 8
I 2 verschiedene Klassen mit gleichen Property vergleichen Java Basics - Anfänger-Themen 13
C Array von Klassen Java Basics - Anfänger-Themen 2
monsterherz 2 Klassen daher Probs mit dem Dateinamen Java Basics - Anfänger-Themen 9
C Kommunikation zwischen 2 Klassen Java Basics - Anfänger-Themen 9
I JPA Query für mehrere Klassen Java Basics - Anfänger-Themen 3
I @Entity Klassen, Service Beans etc. aus einem Share Projekt beziehen? Java Basics - Anfänger-Themen 26
S IntelliJ geht alle Klassen durch Java Basics - Anfänger-Themen 9
I Gleiche Klassen und Methoden in unterschiedlichen Projekten nutzen Java Basics - Anfänger-Themen 2
T variablen klassen übergreifend Java Basics - Anfänger-Themen 12
N Klassen Methoden anderer Klassen aufrufen Java Basics - Anfänger-Themen 4
D Klassen Klassen Kommunikation Java Basics - Anfänger-Themen 12
Encera Auf Objekte aus anderer Klassen zugreifen Java Basics - Anfänger-Themen 20
berserkerdq2 Zwei Klassen Erben von der Klasse A, die eine Klasse kann ich an Methoden übergeben, die als Parameter A haben, die andere nicht? Java Basics - Anfänger-Themen 3
M Andere Methoden in anderen Klassen aufrufen Java Basics - Anfänger-Themen 11
L Methoden in anderen Klassen nutzen Java Basics - Anfänger-Themen 6
D Klassen und Vererbung Java Basics - Anfänger-Themen 2
L Best Practice Annotierte Klassen im Classpath herausfinden Java Basics - Anfänger-Themen 1
P Mit dem Scanner Klassen aufrufen Java Basics - Anfänger-Themen 3
O Klassen Zusammenspiel zwischen 2 Klassen Java Basics - Anfänger-Themen 1

Ähnliche Java Themen

Neue Themen


Oben