Rechercher : dans
Par :

Objets java

Dernière réponse le 12 jui 2001 à 17:04:08 Peguinette, le 12 jui 2001 à 15:44:32 
 Signaler ce message aux modérateurs

J'ai honte !
J'ai une question tres basique, mais que je me pose depuis un baille :

Quelle est la différence entre :

String maChaine;

et

String maChaine = new String();

Je sais tout de meme que lorsque j'utilise le constructeur, cela revient à instancier mon objet. Mais que se passe-t-il (en memoire) si je ne l'instancie jamais et que j'utilise mon objet comme un simple type ?

Est-ce que cela signifie que je place le contenue n'importe où en memoire ?

merci de m'eclairer.

Meilleures réponses pour « Objets java » dans :
Hibernate [Partie 1]: Présentation VoirPrésentation de Hibernate La Session Hibernate : Distribution et principales classes et interfaces : Hibernate est une couche résidant dans la JVM permettant d’assurer le mapping des objets JAVA cachés dans la JVM aux modèle...
Java - Les types de données VoirLes primitives Java est un langage orienté objet, c'est-à-dire que les éléments manipulés sont des classes, ou plus exactement des objets, c'est-à-dire des instances de classes. Toutefois ces objets contiennent des données possèdant un type (et...
Java - Les objets VoirLa création d'objets Un objet est une instance de classe, la création d'objets s'appelle donc l'instanciation. Cette instanciation se fait grâce à l'opérateur new suivi du nom de la classe à instancier et de parenthèses contenant les paramètres...
Les classes Java VoirLa notion d'objet Le langage Java intègre fortement le concept objet, il s'agit donc d'un langage orienté objet (LOO). Le terme langage orienté objet est plus qu'une simple appellation de plus pour désigner un type de langage, il...

1

rzedinho, le 12 jui 2001 à 16:46:44

En fait ce qui se passe quand tu ecris String maChaine, c qu'il prend le constructeur par défaut(sans parametres), ce qui fait que s'il n'y a pas de constructeur declare sans parametres, il prend un costructeur sans parametres de sa super classe et ainsi de suite.
Lorsque tu ecris String maChaine = new String(), s'il n'y pas de constructeur sans parametre il fait pareil, sinon il appelle ce constructeur où il peut y avoir des affectations(valeurs par defaut), ce qui ne peut etre fait de facon aussi specifique dans un constructeur de super classe.
Je sais c un peu lourd comme explication, mais bon j'espere que ca t'aide tt de meme surtt pour comprendre l'heritage et l'appel de methodes en fin de compte.

Répondre à rzedinho

2

Peguinette, le 12 jui 2001 à 16:56:47

Tout d'abord : merci de m'avoir répondu rapidement.

Si j'ai bien compris, dans tous les cas mon objet est instancié et je ne risque pas d'avoir de probleme "basiques".

Je suis plus habituée au C donc je me demandais si je pouvais avoir des problemes semblables à des pointeurs que l'on n'a pas alloués. Mais visiblement non.

merci

Répondre à Peguinette

3

 rzedinho, le 12 jui 2001 à 17:04:08

Non en effet je ne crois pas mais ma parole en Java n'est pas parole d'evangile loin de la, mais enfin voila mon sentimant la-dessus.
Je serais heureux de t'aider de prochaines fois. Au fait j'ai laisse un message sur les bases multidimensionnelles pour Data Warehouse, si tu as le moindre petit elemnet d'info fais le moi parvenir.
Merci
Rzedinho

Répondre à rzedinho