it-swarm.com.de

Was ist der Unterschied zwischen einer Instanz und einem Objekt?

Was ist der Unterschied zwischen einer Instanz und einem Objekt? Gibt es einen Unterschied oder nicht?

62
streetparade

Eine Instanz ist ein Objekt im Speicher. Grundsätzlich erstellen Sie ein Objekt und instanziieren es, wenn Sie es verwenden.

Hier ist eine nette Beschreibung zu Classes Vs Objects Vs Instances, er spricht Java, aber es gilt für alle OO.

http://alfredjava.wordpress.com/2008/07/08/class-vs-object-vs-instance/

42
Dustin Laine

Es gibt keinen wirklichen Unterschied, der zu viel Zeit in Anspruch nehmen sollte. Es mag eine ausgefallene Sprache geben, von der manche Leute viel Platz in Anspruch nehmen, um darüber zu schreiben, aber am Ende des Tages ist, was einen Coder, Entwickler, Programmierer, Architekt angeht, eine Instanz einer Klasse und eine Objekt bedeutet dasselbe und kann oft austauschbar verwendet werden. Ich habe noch nie jemanden in meiner Karriere getroffen, der wählerisch wäre und eine halbe Stunde damit verbringe, die Unterschiede aufzuzeigen, denn es gibt wirklich keinen. Die Zeit kann besser für andere Entwicklungsbemühungen aufgewendet werden.

UPDATEIn Bezug auf Swift bevorzugt Apple, der Swift erfunden hat: 

Eine Instanz einer Klasse wird traditionell als Objekt bezeichnet. Jedoch, Swift-Klassen und -Strukturen sind in der Funktionalität viel näher als in andere Sprachen und ein Großteil dieses Kapitels beschreibt die Funktionalität von kann auf Instanzen einer Klasse oder eines Strukturtyps angewendet werden. Weil hiervon wird der allgemeinere Begriff verwendet.

41

Ausgezeichnete Frage.

Ich erkläre es auf einfachste Weise: Angenommen, Sie haben 5 Äpfel in Ihrem Korb. Jeder dieser Äpfel ist ein Objekt vom Typ Apple, das einige Eigenschaften aufweist (d. H. Groß, rund, wächst auf Bäumen).

In der Programmiersprache können Sie eine Klasse namens Apple haben, die Variablengröße hat: groß, Form: rund, Lebensraum: wächst auf Bäumen. Um 5 Äpfel in Ihrem Korb zu haben, müssen Sie5 Äpfel instanziieren. Apple apple1, Apple apple2, Apple apple3 etc....

Alternativ: Objekte sind die Definitionen von etwas, Instanzen sind die physischen Dinge.

Macht das Sinn?

27
Yuval Karmi

Instanz: Instanz bedeutet, dass Sie lediglich eine Referenz (Kopie) erstellen.

object: bedeutet, wenn dem Objekt ein Speicherplatz zugeordnet ist (ist eine Laufzeitentität der Klasse), indem der neue Operator verwendet wird.

In einfachen Worten bezieht sich Instanz auf die Kopie des Objekts zu einem bestimmten Zeitpunkt, während sich Objekt auf die Speicheradresse der Klasse bezieht.

9
karthik reddy

Nehmen wir an, Sie bauen einige Stühle.

Das Diagramm, das zeigt, wie ein Stuhl aufgebaut und zusammengesetzt wird, entspricht einer Softwareklasse.

Nehmen wir an, Sie bauen fünf Stühle nach dem Muster in diesem Diagramm. Ebenso können Sie fünf Softwareobjekte nach dem Muster in einer Klasse erstellen.

Jeder Stuhl hat eine eindeutige Nummer, die in den unteren Teil des Sitzes eingebrannt ist, um jeden Stuhl zu identifizieren. Stuhl 3 ist eine Instanz eines Stuhlobjekts. Ebenso kann der Speicherplatz 3 eine Instanz eines Softwareobjekts enthalten.

Eine Instanz (Stuhl 3) ist also eine einzelne eindeutige, spezifische Darstellung eines Objekts (Stuhls).

8
Brian Showalter

Objekte und Instanzen sind meist gleich. aber mit sehr kleinem Unterschied ..__ Wenn "Auto" eine Klasse ist; 3 Autos sind 3 verschiedene Objekte. Alle diese Objekte sind Instanzen. Diese 3 Autos sind also Objekte aus der Klasse "Auto".

Das Wort "Instanz" kann jedoch auch "Strukturinstanzen" sein. Objekt ist jedoch nur für Klassen.

Alle Objekte sind Instanzen . Alle Instanzen dürfen keine Objekte sein. Instanzen können "Strukturinstanzen" oder "Objekte" sein.

Objekt :

Es ist ein allgemeiner Begriff. Im Grunde handelt es sich um ein Software-Bundle mit Status (Variablen) und Verhalten (Methoden).

Klasse

Eine Blaupause (Vorlage) für ein Objekt Instanz: Dies ist eine eindeutige Sache. Zum Beispiel erstellen Sie ein Objekt zweimal, was bedeutet, dass Sie zwei Instanzen erstellt haben 

Lass mich ein Beispiel geben

Class student()
{
   private string firstName;
  public student(string fname)
  {
    firstName=fname;
  }
  Public string GetFirstName()
  {
    return firstName;
  }
}

Objektbeispiel :

Student s1 = neuer Student ("Martin"); Student s2 = neuer Student ("Kumar");

Die s1, s2 haben ein Objekt der Klasse Student

Instanz :

s1 und s2 sind Instanzen des Objektschülers die beiden sind unique.

es kann auch als reference aufgerufen werden.

grundsätzlich sind s1 und s2 Variablen, denen ein Objekt zugewiesen ist

5
Durai Amuthan.H

Ein Objekt ist ein Konstrukt, etwas Statisches, das bestimmte Eigenschaften und Merkmale aufweist, wie z. B. Eigenschaften und Methoden. Es kann alles sein (eine Zeichenfolge, ein Benutzersteuerelement usw.).

Eine Instanz ist eine eindeutige Kopie dieses Objekts, die Sie verwenden und verwenden können. 

Stellen Sie sich ein Produkt wie einen Computer vor.

Die xw6400-Workstation ist ein Objekt

Ihre xw6400-Workstation (oder die xw6400-Workstation von IHR WIFE) ist eine Instanz des xw6400-Workstation-Objekts

4
Greg Olmstead

Eine Instanz ist eine bestimmte Darstellung eines Objekts. Ein Objekt ist eine generische Sache, während eine Instanz ein einzelnes Objekt ist, das im Speicher erstellt wurde. Normalerweise werden einer Instanz Werte zugewiesen, die sie von anderen Instanzen des Objekttyps unterscheiden.

2
TLiebe

Object - Eine Instanz einer Klasse mit eigenem Status und Zugriff auf das gesamte von ihrer Klasse definierte Verhalten.

Instanz - Verweis auf einen Speicherbereich für diese bestimmte Klasse.

2
prathipati s

jedes Objekt soll eine Instanz seiner Klasse sein, aber jede Instanz der Klasse hat ihren eigenen Wert für jedes Attribut intances teilt den Attributnamen und die Attributoperation mit ihren Intentionen der Klasse, aber ein Objekt enthält einen impliziten Verweis auf seine Klasse on

1
user2750565

Wenn wir die Definition von Objekt und Instanzobjekt sehen - 

Speicher, der dem Member der Klasse zur Laufzeit zugewiesen wird, wird Objekt oder Objekt ist die Instanz von Class.

Lassen Sie uns die Definition der Instanz sehen -

Speicher zugewiesen für alle zur Laufzeit wird als Instanzvariable aufgerufen.

Verstehen Sie nun die Bedeutung von any Laufzeitspeicherzuordnung in C auch durch Malloc, Calloc, Realloc wie:

struct p
{

}
p *t1
t1=(p) malloc(sizeof(p))

Daher weisen wir auch hier eine Laufzeitspeicherzuordnung zu, aber hier nennen wir sie als Instanz, so dass T1 Instanz ist. Hier können wir T1 nicht als Objekt angeben.

1
Vivek Kumar

Java ist eine objektorientierte Programmiersprache (OOP). Dies bedeutet, dass alles in Java, mit Ausnahme der primitiven Typen, ein Objekt ist.

Java-Objekte ähneln jetzt Objekten der realen Welt. Beispielsweise können wir in Java ein Autoobjekt erstellen, das Eigenschaften wie die aktuelle Geschwindigkeit und Farbe aufweist. und verhalten wie: beschleunigen und parken.

Das ist Objekt .

 enter image description here 

Instanz ist andererseits eine eindeutig initialisierte Kopie dieses Objekts, die wie Car car = new Car() aussieht.

Erfahren Sie mehr über Java-Klassen und -Objekte

1
Stas

Ein Objekt kann eine Klasse sein, beispielsweise eine Klasse namens Basketball. 

sie möchten jedoch mehrere Basketbälle haben, so dass Sie in Ihrem Code mehr als einen Basketball erstellen

sage basketball1 und basketball2 . Dann führen Sie Ihre Anwendung aus . Sie haben jetzt 2 Instanzen des Objekts Basketball. 

0
Darxval

Klasse: Eine Klasse ist ein blauer Druck . Objekt: Es ist die Kopie der Klasse . Instanz: Seine Variable, in der die Speicheradresse des Objekts gespeichert wird.

Ein sehr grundlegendes analytisches Beispiel

Klassenhaus -> Blaupause des Hauses. Aber man kann nicht in der Blaupause leben. Sie benötigen ein physisches Haus, in dem sich die Klasse befindet, in der die Klasse lebt. Das heißt, die tatsächliche Adresse des Objekts ist eine Instanz. Instanzen repräsentieren Objekte.

0
Sindhu

Ein Objekt ist eine generische Sache, zum Beispiel eine lineare Funktion in der Mathematik

ax + b ist ein Objekt, während 3x + 2 eine Instanz dieses Objekts ist

Objekt <<< Instanz

Allgemein <<< Spezifisch

Mehr gibt es nicht

0
Chyanit Singh

Sobald Sie eine Klasse instanziieren (mit new), wird das instanziierte Objekt zu einem Objekt. Ein Objekt ist etwas, das der Einkapselung, dem Polymorphismus, den Abstraktionsprinzipien der objektorientierten Programmierung und der Realität, mit der ein Programm interagiert, entsprechen kann, um die in der Klasse definierten Instanzmitglieder zu verbrauchen. Objekt enthält Instanzmember (nicht statische Member).

Die Instanz einer Klasse ist also ein Objekt. Das Wort "Instanz" wird verwendet, wenn Sie sich auf den Ursprung beziehen, von dem es stammt, es ist klarer, wenn Sie "Instanz einer Klasse" im Vergleich zu "Objekt einer Klasse" sagen (obwohl letzteres verwendet werden kann).

Kann auch den Abschnitt "Innere Klassen" dieses Java-Dokuments zu verschachtelten Klassen lesen - https://docs.Oracle.com/javase/tutorial/Java/javaOO/nested.html

0
p_champ

In Bezug auf den Unterschied zwischen einer object und einer instance glaube ich nicht, dass es einen Konsens gibt.

Es sieht für mich so aus, als ob die Leute es in Veröffentlichungen, Blogbeiträgen, Büchern oder Gesprächen ziemlich austauschbar ändern. 

Meiner Meinung nach ist ein Objekt eine generische und lebendige Entität im Speicher, die durch die Sprache definiert wird, in der sie verwendet wird. Genau wie die Klasse Object in Java. Es ist uns egal, um welchen Typ es sich handelt oder was sonst noch damit zusammenhängt, ob er von einem Container verwaltet wird oder nicht. 

Eine instance ist eine object, die jedoch einem Typ zugeordnet ist, wie in this method accepts Foo instances oder you can not put Animal instances in an instance of a List of Vehicles

objects hat zum Beispiel locks zugeordnet, nicht instances, wohingegen instances Methoden hat. objects sind Müll, nicht instances. 

Aber wie gesagt, so sehe ich das nur, und ich glaube nicht, dass es eine Organisation gibt, auf die wir uns für eine Standarddefinition beziehen können, und jeder wird so ziemlich sein etwas anderes Verständnis/Definitionen haben (natürlich innerhalb der Grenzen). .

0
Koray Tugay

Schnelle und einfache Antwort

  • Klasse : eine Spezifikation, Blaupause für ein Objekt
  • Objekt : physische Präsenz der Klasse im Speicher
  • Instanz : eine eindeutige Kopie des Objekts (gleiche Struktur, unterschiedliche Daten)