in204 cours JAVA gestion mémoire
29 pages
Français

in204 cours JAVA gestion mémoire

-

Le téléchargement nécessite un accès à la bibliothèque YouScribe
Tout savoir sur nos offres
29 pages
Français
Le téléchargement nécessite un accès à la bibliothèque YouScribe
Tout savoir sur nos offres

Description

Ecole Nationale Supérieure de Techniques Avancées (ENSTA) -ht tp://www.ensta.fr ENSTA IN204 Introduction à JAVAOlivier SigaudLIP6/AnimatLabolivier.sigaud@lip6.fr01.44.27.88.53Introduction à JAVA: construction des objetsCe document est mis à votre disposition par l'ENSTA sous couvert de la licence "Creative Commons" Page : 1Ecole Nationale Supérieure de Techniques Avancées (ENSTA) -ht tp://www.ensta.fr Plan du cours 2• Tableaux d'objets• Copie d'un objet• Problèmes de copie• Passage de paramètres• Membres statiques• Quelques exemples et conventionsIntroduction à JAVA: construction des objetsCe document est mis à votre disposition par l'ENSTA sous couvert de la licence "Creative Commons" Page : 2Ecole Nationale Supérieure de Techniques Avancées (ENSTA) -ht tp://www.ensta.fr Tableaux d'objetsAllocation dynamique :valeurs[0] null Object[] valeurs; valeurs[2] null valeurs = new Object[5]; nullvaleurs[4] Attention, on n’a pas encore réservé la mémoire pour des objets contenus dans le tableau…Introduction à JAVA: construction des objetsCe document est mis à votre disposition par l'ENSTA sous couvert de la licence "Creative Commons" Page : 3Ecole Nationale Supérieure de Techniques Avancées (ENSTA) -ht tp://www.ensta.fr Tableaux d’objets (2)Voiture[] cars;Voiturecars[0] objet crééavec new cars[2] Voiturecars[4] objet crééavec ...

Informations

Publié par
Nombre de lectures 108
Langue Français

Extrait

ENSTA IN204  Introduction à JAVA
Olivier Sigaud
LIP6/AnimatLab
olivier.sigaud@lip6.fr
01.44.27.88.53
Introduction à JAVA: construction des objets
Page : 1
Pal nd
Tableaux d'objets
Copie d'un objet
u
Problèmes de copie
 c
Passage de paramètres
Membres statiques
ours 2
Quelques exemples et conventions
Introduction à JAVA: construction des objets
Page : 2
Tablea
Allocation dynamique :
Object[] valeurs;
valeurs = new Object[5];
uxval edurs'[0o]
valeurs[2]
valeurs[4]
bjets
                                                            
Attention, on n’a pas encore réservé la mémoire pour des objets contenus dans le tableau…
Introduction à JAVA: construction des objets
null null null
Page : 3
cars[0]
cars[2]
cars[4]
Table
Voiture[] cars;
                                                            
aux d
Il faut allouer la place pour les objets
objets (2
Voiture objet créé avec new
Voiture objet créé avec new
Introduction à JAVA: construction des objets
)
Page : 4
cars[i] = new Voiture(… );//allocation des Voitures
{
for (int i=0;i<cars.length;i++)
cars = new Voiture[5];   
Voiture cars[];
Page : 5
Introduction à JAVA: construction des objets
}
:  ejstdobaux ableTpo5 e  ds urteinla //noitacoled sus rruseoVti filt auirfaeecuq 
Constructeurs multiples
Il peut y avoir plusieurs constructeurs pour une même classe, avec des paramètres différents Cela signifie que l'on peutsurchargerles constructeurs comme les méthodes Tant qu'aucun constructeur n'est créé, il existe un constructeur par défaut, qui ne prend pas de paramètres et ne fait rien, sauf allouer la mémoire Du coup, quand on rajoute un constructeur avec paramètres, le constructeur par défaut disparaît :(
Introduction à JAVA: construction des objets
Page : 6
Duplication d'objets
On peut avoir besoin de créer deux objets absolument identiques Veut-on deux références sur le même objet ou deux objets différents avec les mêmes valeurs ? Deux télécommandes pour la même télévision, ou bien deux télévisions de même modèle ? S'il n'y a qu'une télévision, changer de chaîne sur une télécommande change la chaîne sur le poste unique...
Introduction à JAVA: construction des objets
Page : 7
Copie d'une rérence
mavoiture
voiture 2 _
Voiture objet créé avec new
mavoiture = new Voiture(); voiture2 = mavoiture;
Introduction à JAVA: construction des objets
Page : 8
Constructeur decopie
Le constructeur de copie sert à dupliquer les objets
mavoiture
voiture 2 _
Voiture objet créé avec new
Voiture objet créé avec new
mavoiture = new Voiture(); voiture2 = new Voiture(mavoiture);
Introduction à JAVA: construction des objets
Page : 9
Constructeur de copie : syntaxe
class Voiture { int nbportes; double cylindree;
}
Voiture(Voiture v) {
}
nbportes = v.nbportes; cylindree = v.cylindree;
Introduction à JAVA: construction des objets
Page : 10
Exercice
• Soit la classeVoiturequi contient les attributs suivants : class Voiture { Moteur moteur; int nbportes; double cylindree; … }
• Moteurest une autre classe • Ecrire le constructeur de copie de la classeVoiture
Introduction à JAVA: construction des objets
Page : 11
  • Univers Univers
  • Ebooks Ebooks
  • Livres audio Livres audio
  • Presse Presse
  • Podcasts Podcasts
  • BD BD
  • Documents Documents