IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Java Discussion :

[Classes Abstraites] Appels


Sujet :

Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre émérite Avatar de Tuxico
    Profil pro
    Étudiant
    Inscrit en
    Août 2003
    Messages
    662
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Août 2003
    Messages : 662
    Par défaut [Classes Abstraites] Appels
    Bonjour à tous,

    voilà, je me demandais ceci,

    supposons que j'ai : une méthode m1 de la classe C. Le corps de m1 fait apparaître un appel à une méthode abstraite m2 de la même classe C (sachant que m1 n'est pas abstraite, C oui forcément).

    Je voulais savoir si cela portait un nom particulier? apparemment oui mais je ne remets pas la main dessus.

    Et aussi, en quoi cette manière de procéder pourrait-elle être licite?


    un grand merci

  2. #2
    Membre Expert Avatar de herve91
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    1 282
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2004
    Messages : 1 282
    Par défaut
    cela peut ressembler au pattern patron de méthode, mais c'est bcp plus général que ça : on s'appuie sur une méthode abstraite telle une brique pour implémenter des méthodes de plus haut niveau, plus complexes, ...
    C'est tout à fait licite et très utilisé.
    Extrait de la classe java.io.OutputStream :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
        public abstract void write(int b) throws IOException;
     
        public void write(byte b[]) throws IOException {
    	write(b, 0, b.length);
        }
     
        public void write(byte b[], int off, int len) throws IOException {
                 ...
    	for (int i = 0 ; i < len ; i++) {
    	    write(b[off + i]);
    	}
        }

  3. #3
    Membre émérite Avatar de Tuxico
    Profil pro
    Étudiant
    Inscrit en
    Août 2003
    Messages
    662
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Août 2003
    Messages : 662
    Par défaut
    merci pour ta réponse rapide,

    et merci pour l'exemple.

    Dans quel cas cas est-ce illicite alors?

  4. #4
    Membre Expert Avatar de herve91
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    1 282
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2004
    Messages : 1 282
    Par défaut
    Citation Envoyé par Tuxico Voir le message
    merci pour ta réponse rapide,

    et merci pour l'exemple.

    Dans quel cas cas est-ce illicite alors?
    ben jamais !

Discussions similaires

  1. Réponses: 3
    Dernier message: 02/03/2015, 19h27
  2. [PHP 5.3] héritage, classe abstraite - pb d'appelle de méthode
    Par antrax2013 dans le forum Langage
    Réponses: 2
    Dernier message: 29/07/2012, 15h21
  3. Classe abstraite et appel de méthode
    Par kadis500 dans le forum Général Java
    Réponses: 4
    Dernier message: 29/12/2011, 11h49
  4. [Smarty] appeler une classe abstraite depuis template
    Par speedev dans le forum Bibliothèques et frameworks
    Réponses: 1
    Dernier message: 23/07/2010, 15h23
  5. Réponses: 2
    Dernier message: 27/05/2010, 13h35

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo