2010-05-21 7 views
54

Quelle est la différence entre une instance et un objet? Y a-t-il une différence ou non?Quelle est la différence entre une instance et un objet?

+9

Vous pouvez peut-être déduire du message d'erreur bien connu "Référence d'objet non définie à une instance d'un objet". : -> – herzmeister

+0

A partir de la spécification JVM: "Un objet est une instance de classe allouée dynamiquement ou un tableau." Http://docs.oracle.com/javase/specs/jvms/se8/html/jvms-2.html – yfklon

+0

[ StackOverFlow] (http://stackoverflow.com/a/42753129/4156229) Je viens de donner une brève description de la différence entre l'objet et l'instance, j'espère que cela aide –

Répondre

4

Un objet est une construction, quelque chose de statique qui a certaines caractéristiques et traits, tels que les propriétés et méthodes, il peut être quelque chose (une chaîne, un usercontrol, etc.)

Une instance est une copie unique de cet objet que vous pouvez utiliser et faire des choses avec.

Imaginez un produit comme un ordinateur.

la station de travail xw6400 est un objet

votre station de travail xw6400 (ou votre station de travail xw6400 L'ÉPOUSE) est une instance de l'objet de station de travail xw6400

0

Un objet peut être une classe, que vous avez une classe appelée basketball.

mais vous voulez avoir plusieurs ballons de basket donc dans votre code vous créez plus de 1 basket

disent basketball1 et basketball2. Ensuite, vous exécutez votre application. Vous avez maintenant 2 instances de l'objet basketball.

+0

Cela signifierait qu'un objet est une instance d'un constructeur de classe? – streetparade

+0

Pensez à l'objet comme un plan. disons que nous avons un plan pour le basket, c'est la classe. quand le basket-ball est créé et fait il existe maintenant, ce qui signifie que nous avons 1 instance du basket-ball de l'objet. si nous construisons un autre ballon de basket à partir de l'objet (blueprint). nous avons maintenant 2 instances du basketball. Il y a toujours un seul objet, mais nous pouvons faire plusieurs instances de cet objet. – Darxval

2

Une instance est une représentation spécifique d'un objet. Un objet est une chose générique alors qu'une instance est un objet unique qui a été créé en mémoire. Habituellement, une instance aura des valeurs assignées à ses propriétés qui la différencient des autres instances du type d'objet.

28

Excellente question.

Je vais l'expliquer de la façon la plus simple possible: Dites que vous avez 5 pommes dans votre panier. Chacune de ces pommes est un objet de type Apple, qui a certaines caractéristiques (c'est-à-dire grand, rond, qui pousse sur les arbres). En termes de programmation, vous pouvez avoir une classe appelée Apple, qui a la taille des variables: grand, forme: rond, habitat: pousse sur les arbres. Pour avoir 5 pommes dans votre panier, vous devez instancier 5 pommes. Apple apple1, Apple apple2, Apple apple3 etc.... Alternativement: Les objets sont les définitions de quelque chose, les instances sont les choses physiques.

Est-ce que cela a du sens?

+27

Ce n'est pas le cas. :) "Les objets sont les définitions de quelque chose" Ce que vous appelez les objets ici sont des classes. –

+0

Downvote puisque je suis d'accord avec le commentaire ci-dessus. – khituras

31

Il n'y a pas de réelle différence significative qui devrait consommer trop de temps. Il y a peut-être un langage sophistiqué que certaines personnes pourraient prendre beaucoup d'espace pour écrire, mais en fin de compte, en ce qui concerne un codeur, développeur, programmeur, architecte, une instance d'une classe et un objet signifie la même chose et peut souvent être utilisé de façon interchangeable. Je n'ai jamais rencontré quelqu'un dans ma carrière qui serait difficile et passer une demi-heure à essayer de faire ressortir les différences, car il n'y en a vraiment aucune.Le temps peut être mieux consacré à d'autres efforts de développement.

MISE À JOUR En ce qui concerne Swift, c'est ce que Apple qui a inventé Swift préfère:

Une instance d'une classe est traditionnellement connue comme un objet. Cependant, Les classes et structures Swift sont beaucoup plus proches en fonctionnalités qu'en autres langages, et une grande partie de ce chapitre décrit les fonctionnalités que peut appliquer aux instances d'un type de classe ou de structure. Parce que de cela, l'instance de terme plus générale est utilisée.

4

Disons que vous construisez des chaises.

Le diagramme qui montre comment construire et assembler une chaise correspond à une classe de logiciel.

Disons que vous construisez cinq chaises selon le modèle de ce diagramme. De même, vous pouvez construire cinq objets logiciels selon le modèle d'une classe.

Chaque chaise a un numéro unique brûlé dans le fond du siège pour identifier chaque chaise spécifique. Le fauteuil 3 est une instance d'un objet chaise. De même, l'emplacement de mémoire 3 peut contenir une instance d'un objet logiciel. Ainsi, une instance (chaise 3) est une seule représentation spécifique et unique d'un objet (une chaise).

3

objet:

Il est un terme de generice essentiellement, il est un ensemble de logiciels qui a l'état (variables) et le comportement (méthodes)

Classe:

Une impression bleu (modèle) pour un objet instance-c'est une chose objet unique par exemple vous créez un objet deux fois qu'est-ce que cela signifie que vous avez créé deux instances

Permettez-moi donner un exemple

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

Objet exemple:

Student s1 = new étudiant ("Martin"); Étudiant s2 = nouvel étudiant ("Kumar");

Le s1, s2 sont d'avoir objet de la classe des étudiants

Instance:

s1 et s2 sont des instances de l'étudiant d'objets les deux sont uniques. Il peut également être appelé référence également.

essentiellement s1 et s2 sont des variables qui sont assignés à un objet

1

chaque objet dit être une instance de la classe, mais chaque instance de la classe a sa propre valeur pour chaque attributs actions de intances le nom d'attribut et opération avec leurs intents de classe mais un objet contient une référence implicite à sa classe

8

Instance: instance signifie simplement créer une référence (copie).

objet: signifie que l'emplacement de la mémoire est associé à l'objet (est une entité d'exécution de la classe) en utilisant le nouvel opérateur. En termes simples, l'instance fait référence à la copie de l'objet à un moment donné, alors que l'objet fait référence à l'adresse mémoire de la classe.

+1

en disant qu'une instance est une référence à un objet a vraiment éclairci les choses pour moi. –

1

Si nous voyons la définition de l'objet et de l'objet instance -

mémoire allouée pour le membre de la classe au moment de l'exécution est appelé objet ou objet est l'instance de classe.

Voyons la définition de l'instance -

mémoire allouée Pour Toute au moment de l'exécution est appelé comme variable d'instance.

maintenant comprendre le sens de tout calloc, aussi le temps arrive en C allocation de mémoire d'exécution par Malloc, Realloc tels:

struct p 
{ 

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

donc ici aussi nous affectons l'allocation de mémoire de temps d'exécution, mais ici nous appelons comme instance donc t1 est instance ici nous ne pouvons pas dire t1 comme objet donc chaque objet est l'instance de classe mais chaque instance n'est pas un objet.

2

Object - Instance d'une classe qui possède son propre état et accède à tous les comportements définis par sa classe. Instance - Référence à une zone de mémoire pour cette classe particulière.

5

Les objets et les instances sont principalement identiques; mais ayant une très petite différence. Si "voiture" est une classe; 3 voitures sont 3 objets différents. Tous ces objets sont des instances. Donc, ces 3 voitures sont des objets de la classe "voiture".

Mais le mot "instance" peut aussi être "instances de structure". Mais l'objet est seulement pour les classes.

Tous les objets sont des instances. Toutes les instances peuvent ne pas être des objets. Les instances peuvent être des "instances de structure" ou des "objets".

0

Classe: Une classe est une impression bleue. Objet: C'est la copie de la classe. Instance: C'est une variable qui est utilisée pour contenir l'adresse mémoire de l'objet.

Un exemple d'analyse très basique

Class House -> Plan directeur de la maison. Mais vous ne pouvez pas vivre dans l'imprimé bleu. Vous avez besoin d'une maison physique dans laquelle réside l'instance de la classe, c'est-à-dire que l'adresse réelle de l'objet est l'instance. Les instances représentent des objets.

-2

L'objet fait référence à la classe et l'instance fait référence à un objet. En d'autres termes, l'instance est une copie d'un objet avec des valeurs particulières.

Questions connexes