Du bist nicht angemeldet.

Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!

Werbeanzeige

1

17.12.2015, 07:46

Was sind Instanzen ?

Hallo erstmal :)

Ich lese zurzeit das Buch von Heiko Kalista. Und bin bei denn Singletons und da ist die rede von Instanzen und meine frage ist was das genau ist. Klar ist es mir schon das es was mit denn Klassen zu tun hat.

mfg N4SONIC :)

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »N4SONIC« (17.12.2015, 11:06)


dot

Supermoderator

Beiträge: 9 757

Wohnort: Graz

  • Private Nachricht senden

2

17.12.2015, 07:49

Ein Objekt einer bestimmten Klasse nennt man auch eine "Instanz" dieser Klasse... ;)

3

17.12.2015, 07:53

Also ist zum beispiel die ganze Klasse eine Instanz(Objekt) ? :)

dot

Supermoderator

Beiträge: 9 757

Wohnort: Graz

  • Private Nachricht senden

4

17.12.2015, 07:54

Nein, eine Klasse ist kein Objekt, sondern eine Klasse. Eine Klasse ist ein Typ. Ein Objekt ist eine Instanz eines Typs...

5

17.12.2015, 07:56

Ah ok :D Und was ist dann in einer Klasse die Instanz also wo befindet sie sich ? Könntest du mir das in einen beispiel Code zeigen ?

BlueCobold

Community-Fossil

Beiträge: 10 738

Beruf: Teamleiter Mobile Applikationen & Senior Software Engineer

  • Private Nachricht senden

6

17.12.2015, 08:00

class Foo <-- Klasse
{
}

Foo f; <-- f ist eine Instanz / ein Objekt der Klasse Foo

Stell dir eine Klasse vor wie einen Bauplan. Der sagt, was wie genau aussehen soll. Aber nur weil ich einen Bauplan habe, habe ich noch lange kein Haus. Baue ich nun ein Haus mit diesem Bauplan, habe ich eine Instanz. Instanzen kann ich noch und nöcher bauen, der Bauplan bleibt aber derselbe.
Teamleiter von Rickety Racquet (ehemals das "Foren-Projekt") und von Marble Theory

Willkommen auf SPPRO, auch dir wird man zu Unity oder zur Unreal-Engine raten, ganz bestimmt.[/Sarkasmus]

dot

Supermoderator

Beiträge: 9 757

Wohnort: Graz

  • Private Nachricht senden

7

17.12.2015, 08:02

Ah ok :D Und was ist dann in einer Klasse die Instanz also wo befindet sie sich ?

Nirgendwo. Eine Klasse beschreibt, wie Instanzen dieser Klasse aussehen und sich verhalten. Die Klasse an sich ist nur die Beschreibung. Erst wenn du Objekte dieser Klasse erzeugst, also die Klasse instanzierst, hast du Objekte, also Instanzen, dieser Klasse.

C-/C++-Quelltext

1
2
3
4
5
6
7
8
9
int x;  // x ist ein Objekt vom Typ int bzw. eine Instanz des Typs int

class C  // die Klasse C definiert einen neuen Typ namens C
{
  float a;
  bool b;
};

C y;  // y ist ein Objekt vom Typ C bzw. eine Instanz der Klasse C

8

17.12.2015, 08:06

Achso!! :D Jetzt sitzt es :thumbsup:

Vielen Dank für die ausführlichen Erklärungen :) Ich bin euch sehr dankbar ^^

9

17.12.2015, 15:20

Als kleiner Tipp nebenbei: Was mir manchmal geholfen hat war, die Fachbegriffe aus dem Englischen zu nehmen, durch einen Übersetzer zu jagen und nach den verschiedenen Übersetzungen zu gucken (Wobei man dann natürlich dem Übersetzer trauen muss).

Bsp.: Instanz -> instanzieren -> instantiate -> http://www.dict.cc/?s=instantiate&failed_kw=instatiate -> "Ein Exemplar erzeugen"...

Oder einfach direkt nach Synonymen für Instanz gucken ("Exemplar, Beispiel, Fall,...")..

So lernt man dann direkt ein paar Vokabeln :thumbup:

Wirago

Alter Hase

Beiträge: 1 193

Wohnort: Stockerau

Beruf: CRM Application Manager

  • Private Nachricht senden

10

17.12.2015, 15:33

Bei Juristen ist eine Instanz ebenfalls etwas anderes, aber darum geht es hier ja nicht.
Ich denke der TE hat das schon begriffen. Die Fachausdrücke merkt man sich mit der Zeit ohnehin, bzw. fragt/liest nach wenn man sich nicht auskennt.

Werbeanzeige