Chrisvendes

1388 mots 6 pages
Cours de programmation pour la section SIE 3ème et 4ème semestres

Motivations
• Dans le chapitre précédent, les classes servaient à regrouper des données liées entre elles
– héritage mis à part, c’est l’équivalent du « record » de Fortran et Pascal ou « struct » de C et C++

Chapitre 10: L’approche Orientée Objet (suite)
Jarle Hulaas Chargé de cours SIN Jarle.Hulaas@epfl.ch

• Mais les classes servent surtout à regrouper les traitements (opérations, méthodes) spécifiques à ces données

Exemples
Voiture marque couleur immatriculation accélérer() freiner() tourner() Personne nom âge baptiser() vieillir() toString() afficher() Vecteur taille éléments lireElém() écrireElém() additionner() toString() afficher() Compte numéro titulaire solde créditer() débiter() consulter() bloquer()

Exemple: méthodes de Personne public class Personne { public String nom; public int age;
...

public void vieillir(){ age += 1; } public void baptiser(String nom){ this.nom = nom; } public String toString(){ return "Je m'appelle " + nom + ", j'ai " + age + " ans"; }

// non "static"

// non "static"

// non "static"

(les éventuels paramètres des méthodes ont ici été omis)

public void afficher(){ // non "static" System.out.println(this.toString()); } }

Héritage des méthodes
• Toutes les sous-classes de Personne héritent automatiquement les méthodes non statiques • On peut donc invoquer les méthodes de la classe Personne sur toute instance de ses sous-classes autre aspect du polymorphisme

Héritage des méthodes: exemple public static void main(String[] args) { Enfant anne = new Enfant("Anne", 6, …); Personne p = anne; // invocation de 'vieillir': p.vieillir(); // invocation parfaitement équivalente: anne.vieillir(); }

Situation en mémoire
Après p.vieillir() anne
«référence»

Notation et terminologie
• Une méthode d’instance (i.e. non static) est toujours invoquée sur un objet précis, celui qui préfixe l’appel P.ex.: anne.vieillir(); • Cet objet

en relation

  • Acrc jules
    473 mots | 2 pages
  • Christo
    733 mots | 3 pages
  • Crozier
    5983 mots | 24 pages
  • CRsiete
    322 mots | 2 pages
  • Christian vieri
    545 mots | 3 pages
  • Christelle
    272 mots | 2 pages
  • Christo
    291 mots | 2 pages
  • Christo
    396 mots | 2 pages
  • Chris
    723 mots | 3 pages
  • Chri
    761 mots | 4 pages
  • Creil
    375 mots | 2 pages
  • Cris
    742 mots | 3 pages
  • Christo
    3294 mots | 14 pages
  • Christo
    523 mots | 3 pages
  • Christophe
    4561 mots | 19 pages