Accueil
 Sommaire du cours
 1  Introduction à Java
 2  Concepts de bases de Java
 2.1  Syntaxe de base
 2.2  Types Primitifs
 2.3  Tableaux
 2.4  Méthodes
 2.5  Exemple de passage d'arguments
 Questions
 3  Classes et objets en Java
 4  Généralisation spécialisation en Java
 5  Organisation des sources Java
 6  API Java
 7  Exceptions en Java
 8  Concepts objets avancés en Java
 Bibliographie

 Contacts

W3C validator

Département INF  
 Conception et programmation orientées objet


2.4 Méthodes

  • Nom donné aux opérations
  • Méthodes associées aux classes (pas de méthode sans classe)
  • Surcharge (en anglais, overloading) des méthodes possible
  • Méthode d’instance
  • Méthode de classe avec mot réservé static
  • Prototype de la méthode public static void main(final String [])
  • Passage d’arguments
    • Par valeur pour les types primitifs
    • Par référence pour les objets et les tableaux

    précédent     suivant 


Ce que vous connaissez sous le concept de fonction en langage C (partie de code, associée à une liste de paramètres et un type de retour) est appelé opération en UML et méthode en Java ainsi que dans de nombreux langages objets.

En Java, les méthodes ne sont pas définies dans un seul espace de nommage comme en langage C. Chaque méthode est définie à l’intérieur d’une classe. Dans une classe les méthodes sont identifiées par leur nom et la liste de leurs paramètres, ce qui donne la possibilité d’avoir plusieurs méthodes dans une classe qui portent le même nom mais qui travaillent sur des paramètres de types différents. Cette possibilité est appelée surcharge de méthodes (overloading en anglais).

Dans le cas le plus courant, les méthodes sont associées aux objets d’une classe. Elles sont utilisées à travers une référence d’objet. Nous approfondirons ceci dans le chapitre 3. Les méthodes de ce type sont appelées méthodes d’instance car elles agissent sur un objet à la fois.

Les méthodes peuvent aussi être associées à la classe lorsqu’elles sont qualifiées de static, comme les méthodes que nous avons vues jusqu’à maintenant, et en particulier la méthode main. Ce type de méthode est dit de classe. Ces méthodes de classe peuvent être utilisées directement en associant le nom de la classe et le nom de la méthode reliés par un point comme dans Math.sqrt(4).

La méthode de classe public static void main(String []) joue un rôle identique à la méthode int main(int argc, char *argv[]) du langage C. Elle sert de point d’entrée pour un programme.

Les variables de type primitif sont passées par copie de la valeur. Les variables de type tableau ou objet sont manipulées en Java à travers une référence. Lors du passage d’une référence à une méthode, cette référence permet de manipuler l’objet d’origine. Ainsi toute modification réalisée à travers une référence dans une méthode appelée modifie l’objet qui est référencé de manière visible par la méthode appelante.

Christian Bac, Denis Conan, Télécom SudParis, CSC 4002, Octobre 2015