Unterschied zwischen Datentypen, primitiven Datentypen und Objekttypen?

... komplette Frage anzeigen

3 Antworten

Also das dürfte sicherlich von der Programmiersprache abhängen ... ich sag mal, wie es in C# meines Wissens definiert ist:

  • Datentypen nennt man allgemein alles (bis auf void), das - wie der Name schon sagt - den Typ eines Members, also einer Variable, Eigenschaft, eines Feldes oder einer Methode angibt, also, was im Speicher jeweils zu lesen ist.
  • Davon gibt es im Besonderen die primitive Datentypen, welche vom Compiler vordefinierte Typen bezeichnen. Dies sind etwa int, string, bool, etc. I. d. R. sind es - zumindest bei C# - nur "Verknüpfungen" auf die jeweiligen Objekttypen wie String, UInt32 oder Boolean.
  • Objekttypen bezeichnen den jeweiligen Datentyp eines Objektes aus einer normalen Klasse. Besondere Klassen sind etwa Object, Enum oder Attribute.

Ich hoffe, ich konnte dir helfen; wenn ich mich irgendwo geirrt haben sollte, lasst es mich bitte gerne wissen :-)

Mit freundlichen Grüßen,
KnorxThieus (♂)

Antwort bewerten Vielen Dank für Deine Bewertung
Kommentar von androhecker
09.05.2016, 18:48

Ein Blick in die Tags hilft, ist aber nicht deine Schuld, das sollte man schon deutlicher ausdrücken.

1

Primitive Daten sind alle die klein geschrieben werden, also short, long, int, double, etc. Diese Speichern nur einen einzelnen Wert und werden auch nur als Wert übergeben.
Objekttypen sind eben Objekte von einer Klasse, zB ein String oder eine Liste, bei diesen wird das Objekt selbst und nicht nur ein Wert übergeben.

Antwort bewerten Vielen Dank für Deine Bewertung
Kommentar von androhecker
09.05.2016, 21:47

Schlechte Bewertung, für was? Ach ja, immer das gleiche...

0

Datentypen sind es erst mal alles.

primitive Datentypen kenn ich eigentlich nur von Java, da esn keine vollständig objektorientierte Programmiersprache ist! Das bilden die einfachen Datentypen wie int, double und sowas. Dies sind keine Objekte. Bei C# hingegen schon, da diese Sprache vollständig objektorientiert ist!

Objekttypen sind echte Objekte, die eine Instanz einer Klasse darstellen.

Vielleicht kann man noch etwas weiter gehen: Objekttypen werden nämlich in aller Regel durch CallByReferenz angesprochen. Primitive Datentypen durch CallByValue. Bei C# kann man das durch ref und out explizit ändern. Bei java ist das nicht möglich.

Antwort bewerten Vielen Dank für Deine Bewertung
Kommentar von androhecker
09.05.2016, 22:40

Java bietet genauso die Objekte Integer, Double, etc an, diese primitiven Datentypen gibt es aus dem Grund, dass sie einfach schneller sind und es deutlich angenehmer ist reine Werte zu übergeben anstatt jedes Mal das Objekt zu clonen.

0
Kommentar von androhecker
10.05.2016, 12:46

255.toString(), ziemlich sinnlos nicht? 2) Natürlich muss man dann Klonen, jedenfalls wenn das Objekt übergeben wird, wenn der Wert übergeben wird ist es keine Objektorietierung 3) Und, letztendlich muss man ja mit den Werten rechnen, das Problem ist dass dabei mehr Methoden Calls aufgerufen welche meistens länger dauern als die Operation selbst, Java lässt solche Rechnungen direkt von C aus berechnen, wodurch Java auch so schnell ist.

0

Was möchtest Du wissen?