Vous êtes sur la page 1sur 11

06/10/2011 16:56

/** commentaire de documentation (utilisée par JavaDoc) */

réel : 1.32 1.32e4 1.32E4 sont des "double", 1.32F 1.32f des

http://www.pasteur.fr/~llafit

'\0132'

commence par une lettre ou $ ou _, puis est suivi de lettres

déclaration : int i ; int i,j ; int i = 2, j = 3; <type> <identificateur> [= <valeur d'initialisation>] ; visibilité d'une variable dans le bloc {} où elle est définie

nom qui référence/nomme une classe, une interface, une

nom de classe ou interface : ChienDeRace méthode ou variable : toutouBatard constante (variable final) : MEDOR_QUI_MORD

null : valeur d'une variable qui ne référence aucun objet.

Décimal 132 -132 ou 132L pour un long mais pas 0132 (ne pas commencer par un zéro) Hexadécimal 0XE3A4 0x3D6 Octal 0132

type pour référencer les objets à chaque classe correspond un type référence de même nom les types tableaux sont des types références

pour les valeurs et variables non objets entier : byte (8 bits) short (16) int (32) long (64) réel flottant : float (32) double (64) char (16 bits Unicode) boolean

chaîne de caractères : "chaine" "une ligne\ndeux !"

caractère (Unicode): 'A' '\n' newline '\t' tabulation

ou chiffres ou caractères nationaux (accentués)

Java distingue la casse majuscule/minuscule.

JAVA NOTIONS

méthode, une variable, un package

déclaration de variable

ligne de commentaire += 5 ; // commentaire += /* commentaire */ 5;

"float" booléen : true false

type référence :

commentaire

convention :

'\0xA2'

JAVA notions

1 sur 11

1.
2.

5.

4.

3.

constante

entier :

//

x
x

'\0xA2' JAVA notions 1 sur 11 1. 2. 5. 4. 3. constante entier : // x
identificateur
identificateur
type type de base :
type
type de base :
'\0xA2' JAVA notions 1 sur 11 1. 2. 5. 4. 3. constante entier : // x
'\0xA2' JAVA notions 1 sur 11 1. 2. 5. 4. 3. constante entier : // x
'\0xA2' JAVA notions 1 sur 11 1. 2. 5. 4. 3. constante entier : // x
'\0xA2' JAVA notions 1 sur 11 1. 2. 5. 4. 3. constante entier : // x

06/10/2011 16:56

int est converti vers long ou double sans problème, ou vers float (avec perte de préçision possible) float vers double long vers double sans problème, ou vers float (avec perte de préçision possible)

les déclarations de variable locale peuvent se faire n'importe

http://www.pasteur.fr/~llafit

. signifie opérateur d'accés aux attributs ou méthodes d'un objet ou d'une classe : Chien.nom + est aussi la concatenation de String : "abc" + "def" instanceof teste l'appartenance d'un objet à une classe (ou si un objet implémente une interface) et retourne un boolean : milou instanceof Chien précédence des opérateurs : les opérateurs les + prioritaires à l'évaluation sont vers le haut du tableau

cast (transtypage) , convertion de type comme en C : float f

Lorsque l'on effectue des opérations sur des variables

variable de classe = attribut de la classe (1 seule pour toute la classe) variable d'instance = attribut d'une instance de la classe (1 par instance/objet) variable locale = déclarée dans une méthode

if else, for, while, do while, switch, break, continue,

attention aux tests qui doivent être de type boolean

une variable locale DOIT être initialisée obligatoirement ! les variables de classe et d'instance non initialisées recoivent la valeur 0 pour un entier ou un réel, null pour une chaine, false pour un boolean.

l'opérande occupant le plus de place en mémoire :

de types différents, le type du résultat est celui de

expression, instruction : comme en C

instructions comme en C :

mêmes opérateurs sauf :

= 3.56F ; int i = (int) f ;

où dans un bloc { }

initialisation:

return

2 sur 11

6.

f ; où dans un bloc { } initialisation: return 2 sur 11 6.    
f ; où dans un bloc { } initialisation: return 2 sur 11 6.    
f ; où dans un bloc { } initialisation: return 2 sur 11 6.    
                       

! évaluation de droite à

gauche !

 
 

instanceof++

                       
 

~

     

=>

               

()

!

%

 

>>>

<=

               

[]

--

/

-

>>

>

!=

         

op=

 

.

 

*

+

<<

<

==

&

^

&&

||

?:

=

,

  op=   .   * + << < == & ^ && || ?: =
  op=   .   * + << < == & ^ && || ?: =
  op=   .   * + << < == & ^ && || ?: =
  op=   .   * + << < == & ^ && || ?: =

06/10/2011 16:56

tab = new char [7]; mat = new int [5] [6] ; float tab2 [] = new float [7] ; boolean grille [] [] = { { false, true, false}, {true, false, false}}; <nom> = new <type> [<taille>]; instanciation <type> <nom> [] = new <type> [<taille>]; déclaration/instanciation <type> <nom> [] = { <liste des éléments du tableau }; déclaration/instanciation/initialisation accès aux éléments comme en C l'accès en dehors des indices valides provoque une exception

http://www.pasteur.fr/~llafit

classe = modéle/type pour des objets, qui précise les attributs (états de l'objet) et méthodes (comportements) public class Chien { public String couleur; public void aboie () { System.out.println("Houah! Houah!"); } }; [<modificateurs d'accès>] class <nomClasse> [<extends> <SuperClasse>] [implements <interfaces>] { <attributs> <méthodes> } modificateurs d'accès = visibilité, extends précise que la déclaration de la présente classe hérite d'une autre (super)classe implements précise que la déclaration de la présente classe implémente certaines interfaces (il s'agit d'une forme d'héritage multiple) les attributs sont les champs/caractéristiques, sur l'exemple :

un tableau est une objet qui contient une collection d'éléments de même type qui sont accessible par un ou plusieurs index entiers (commencant à partir de la valeur 0) déclaration :

import java.io.* ; System.out.printl("valeur de pi = " + java.lang.Math.PI); La librairie standard de Java est organisée en arborescence de package, qui sont des sous-ensembles fonctionnels de classes et d'interfaces. L'accès à un package ou une Classe d'un package se fait en

IndexOutOfBoundException longueur du tableau : tab.length 1ere dimension : mat.length, seconde mat[0].length un tableau est une variable d'instance, exemple mat. comme tout objet java, elle hérite des méthodes et attributs de la classe Object. mat instanceof int[][] est true la classe de mat2 est int[][]

char tab [] ; char [] tab ; int [][] mat ; int mat [][]; <type> [] <identificateur> ; <type> <identificateur> [] ;

couleur les méthodes sont les messages/fonctions/actions applicables, sur l'exemple : aboie

déclaration de classe

instanciation (création) :

package, import

tableau

JAVA notions

3 sur 11

9.

8.

7.

: aboie déclaration de classe instanciation (création) : package, import tableau JAVA notions 3 sur 11
: aboie déclaration de classe instanciation (création) : package, import tableau JAVA notions 3 sur 11
: aboie déclaration de classe instanciation (création) : package, import tableau JAVA notions 3 sur 11
: aboie déclaration de classe instanciation (création) : package, import tableau JAVA notions 3 sur 11
: aboie déclaration de classe instanciation (création) : package, import tableau JAVA notions 3 sur 11
: aboie déclaration de classe instanciation (création) : package, import tableau JAVA notions 3 sur 11
: aboie déclaration de classe instanciation (création) : package, import tableau JAVA notions 3 sur 11
: aboie déclaration de classe instanciation (création) : package, import tableau JAVA notions 3 sur 11
: aboie déclaration de classe instanciation (création) : package, import tableau JAVA notions 3 sur 11
: aboie déclaration de classe instanciation (création) : package, import tableau JAVA notions 3 sur 11
: aboie déclaration de classe instanciation (création) : package, import tableau JAVA notions 3 sur 11

06/10/2011 16:56

à la classe qu'elle posséde 1 ou plusieures instances ou aucune, public class BergerAllemand {

donnant le chemin dans cette arborescence, chaque nom de package (sous-package) étant séparé par un point. l'instruction import permet "d'importer" un ou plusieurs packages : les classes importées peuvent être alors nommées sans leur "chemin". L'étoile dans un import ne désigne que tous les sous-packages directement en dessous du package nommé :

http://www.pasteur.fr/~llafit

dans l'exemple, le message aboie est envoyé à médor, ce qui provoque l'exécution de la méthode nommé; le mode passage des paramètres est par valeur pour les types simples et par référence pour les tableaux, chaines de caractères et objets.

définit l'attribut de la classe : donc un attribut attaché

automatique dès que l'objet n'est plus référencé par aucune variable ou aucun autre objet. la méthode finalise() est appelée avant la destruction de l'objet : elle peut être redéfinie.

java.awt.* ne désigne pas java.awt.color.* il est possible de déclarer un package en ajoutant à tous les fichiers sources concernés le 1ère ligne :

milou.couleur = "blanc" ; médor.couleur = milou.couleur ; médor.aboie(); <nomObjet>.<variable> pour accéder à un attribut sous réserve de visibilité et des modificateurs <nomObjet>.<méthode>([<paramètres effectifs>]) pour envoyer un message à cet objet ou encore appeler/exécuter une méthode sur l'objet désigné :

donc un attribut attaché à chaque objet de la classe par exemple couleur de la classe Chien [<modificateurs>] <type> <nomVariable> [= <valeur>] ; où modificateur peut être final, public, private, protected, private protected, volatile, transcient variable de classe :

Création d'un objet : new Chien milou ; milou = new Chien() ; Chien médor = new Chien() ; [<nomClasse>] <variable> = new <nomClasse> (<paramètres>) ; l'opérateur new crée une instance d'une classe en faisant appel à une méthode constructeur s'il y a, et renvoie une référence sur l'objet instancié instanciation = créer un objet à partir d'une classe objet = instance de classe qui posséde une "copie" des attributs et méthodes de la classe accès aux variables et méthodes d'un objet :

définit l'attribut d'une seule instance d'une classe :

package <nomDePackage>;

destruction d'un objet :

variable d'instance :

attribut

JAVA notions

objet

4 sur 11

11.

10.

destruction d'un objet : variable d'instance : attribut JAVA notions objet 4 sur 11 11. 10.
destruction d'un objet : variable d'instance : attribut JAVA notions objet 4 sur 11 11. 10.
destruction d'un objet : variable d'instance : attribut JAVA notions objet 4 sur 11 11. 10.
destruction d'un objet : variable d'instance : attribut JAVA notions objet 4 sur 11 11. 10.
destruction d'un objet : variable d'instance : attribut JAVA notions objet 4 sur 11 11. 10.
destruction d'un objet : variable d'instance : attribut JAVA notions objet 4 sur 11 11. 10.
destruction d'un objet : variable d'instance : attribut JAVA notions objet 4 sur 11 11. 10.
destruction d'un objet : variable d'instance : attribut JAVA notions objet 4 sur 11 11. 10.
destruction d'un objet : variable d'instance : attribut JAVA notions objet 4 sur 11 11. 10.

06/10/2011 16:56

le mode passage des paramètres est par valeur pour les types simples et par référence pour les objets, donc tableaux et chaines de caractères. signature et surcharge :

; i++ ) System.out.println("Houah!"); } public void aboie (String aboiement) { System.out.println(aboiement + " " + aboiement); } }; les accès sont alors : milou.aboie(); médor.aboie("Grrrr"); milou.aboie(5); la signature d'une méthode est constituée du nom de la méthode, du nombre et du type de ses paramètres, et du type qu'elle renvoie. la surcharge d'une méthode dans une classe consiste à définir des méthodes de même nom mais de signature différente au niveau des paramètres.La surcharge est

valeur est renvoyé par une instruction return <valeur>

http://www.pasteur.fr/~llafit

public class Chien { public void aboie () { System.out.println("Houah! Houah!"); } public void aboie (int nbre) { for (int i = 0 ; i < nbre

qui peut être déclanché sans instance de la classe à la

définit un comportement de l'objet, un traitement qui ne peut être déclanché qu'en envoyant un message à un objet de la classe par exemple aboie de la classe Chien [<modificateur>] <type> <nomMéthode> ([<paramètres formels>]) { <corps de la méthode> }

([<paramètres formels>]) { <corps de la méthode> }

} définit un comportement de la classe, un traitement

static public String couleur = "marron" ; public String nom ; public void aboie () { System.out.println("Houah! Houah!"); } }; static [<modificateurs>] <type> <nomVariable> [= <valeur>] ; où modificateur peut être final, public, private, protected, private protected, volatile, transcient

le type de la valeur renvoyé peut-être void, un type

une méthode définit un comportement comme une

simple ou une référence d'objet. Sauf pour void, la

classe elle-même : System.out.println("nombre de

public class Chien { public String couleur; public static int nombreDePattes () { return 4; }

ne peut affecter que des variables de classe (donc

pattes d'un chien : " + Chien.nombreDePattes() );

[<modificateur>] static <type> <nomMéthode>

; dans le corps de la méthode

procédure ou une fonction

méthode d'instance :

méthode de classe :

static)

généralités :

méthodes

JAVA notions

5 sur 11

12.

une fonction méthode d'instance : méthode de classe : static) généralités : méthodes JAVA notions 5
une fonction méthode d'instance : méthode de classe : static) généralités : méthodes JAVA notions 5
une fonction méthode d'instance : méthode de classe : static) généralités : méthodes JAVA notions 5
une fonction méthode d'instance : méthode de classe : static) généralités : méthodes JAVA notions 5
une fonction méthode d'instance : méthode de classe : static) généralités : méthodes JAVA notions 5
une fonction méthode d'instance : méthode de classe : static) généralités : méthodes JAVA notions 5
une fonction méthode d'instance : méthode de classe : static) généralités : méthodes JAVA notions 5
une fonction méthode d'instance : méthode de classe : static) généralités : méthodes JAVA notions 5

06/10/2011 16:56

http://www.pasteur.fr/~llafit

ne peut être exécuter que par un navigateur Web compatible Java, ou la commande appletviewer du JDK. import java.awt.*; public class MonApplet extends java.applet.Applet { public void paint( Graphics g) { g.drawString("Hello Word !", 10, 20); } } Une applet doit être composée d'au moins une sous-classe de Applet et éventuellement d'autres classes auxilliaires. Pour charger une applet dans une page HTML :

soit implicite, c'est à dire non défini : il initialise alors les attributs soit explicite, c'est à dire défini : il doit alors être sans

la compilation d'un fichier source (nommé TelleClasse.java) contenant la classe TelleClasse produit un fichier (exécutable en bytecode) de nom TelleClasse.class. La commande est : javac TelleClasse.java application Java :

où les modificateurs peuvent être public, private, protected,

[<modificateur>] <nomClasse> ([<paramètres formels>]) {

c'est un programme autonome qui exécute un ou plusieurs fichier .class, et dont un (celui qui est lancé en premier) doit posséder une méthode : public static void main (String args []) { <corps du "programme principal"> } la ligne de commande d'éxécution est : java ClasseContenantMain argument0 argument1 Les arguments, s'il y en a, sont des String et sont indexés à partir de 0.

<applet code="nomApplet.class" codebase="chemin d'accès commencant par http://" width=valeur

une méthode constructeur est une méthode appelée au moment de la création d'une instance par l'opérateur new. public class Chien { public String couleur; public Chien () { couleur = "inconnue"; } public Chien (String c) { couleur = c; }

} Chien médor = new Chien() ; Chien milou; milou = new

Un constructeur ne retourne pas de valeur Un constructeur ne peut pas être appelé sauf par l'opérateur new. Un constructeur peut être surchargé ou redéfini.

<corps de la méthode constructeur> }

une forme de polymorphisme.

le constructeur par défaut est :

application, applet

paramêtre

Chien("blanc");

constructeurs

applet Java :

généralités :

ou sans.

JAVA notions

6 sur 11

13.

14.

paramêtre Chien("blanc"); constructeurs applet Java : généralités : ou sans. JAVA notions 6 sur 11 13.
paramêtre Chien("blanc"); constructeurs applet Java : généralités : ou sans. JAVA notions 6 sur 11 13.
paramêtre Chien("blanc"); constructeurs applet Java : généralités : ou sans. JAVA notions 6 sur 11 13.
paramêtre Chien("blanc"); constructeurs applet Java : généralités : ou sans. JAVA notions 6 sur 11 13.
paramêtre Chien("blanc"); constructeurs applet Java : généralités : ou sans. JAVA notions 6 sur 11 13.
paramêtre Chien("blanc"); constructeurs applet Java : généralités : ou sans. JAVA notions 6 sur 11 13.

06/10/2011 16:56

public void aboie (int nbre) { for (int i = 0 ; i < nbre ; i++ )

http://www.pasteur.fr/~llafit

init() est lancée par le Navigateur dès que le chargement de l'applet est terminé, start() est lancée après init() et à chaque re-chargement de la page html, paint() est lancée à chaque fois que l'applet est rendue visible; cette méthode peut récupérer le paramètre Graphics utile pour dessiner, stop() est lancée quand la navigateur change de page ou quand l'applet se termine ou avant destroy() destroy() est lancée à la fermeture du navigateur.

public void aboie () { System.out.println("Wouf! Wouf!");

height=valeur> attention ! navigateur sans java </applet> Elle ne possède pas de méthode main() mais d'une ou plusieures méthodes parmi les méthodes init() start() stop() destroy() paint() héritées de la super-classe Applet :

recherchée dans la classe de l'objet; si elle n'y est pas

classe ChienDeRace est une sous-classe de la classe Chien,

classe Applet hérite de la classe Panel, composant

la sous-classe hérite de tous les attributs et méthodes de sa

} la classe ChienDeRace hérite de la classe Chien : la classe

niveau de la sous-classe, l'accès aux méthodes et

Une classe n'hérite que d'une super-classe : c'est l'héritage

constructeur) dépends des modificateurs d'accès de

définie, elle est recherchée dans sa super-classe, et

Chien est la super-classe de la classe ChienDeRace, et la

redéfinie dans une sous-classe. Cette redéfinition

une méthode héritée d'une super-classe peut-être

attributs ainsi que la redéfinition de méthode (ou

public void aboie () { System.out.println("Houah!

l'appel d'une méthode, celle-ci est d'abord

public Chien () { couleur = nom = "inconnu"; }

ainsi de suite dans la hiérarchie de classe.

héritage, sous-classe, super-classe

public ChienDeRace (String r) { race = r; }

} public class ChienDeRace extends Chien {

C'est une forme de polymorphisme.

} // c'est plus distingué un chien de race !

masque la méthode héritée.

System.out.println("Houah!"); }

ce qui constitue une hièrarchie.

redéfinition de méthode :

public String couleur;

public String nom ;

public String race;

public class Chien {

graphique.

super_classe.

Houah!"); }

au

A

la

simple.

JAVA notions

7 sur 11

15.

String race; public class Chien { graphique. super_classe. Houah!"); } au A la simple. JAVA notions
String race; public class Chien { graphique. super_classe. Houah!"); } au A la simple. JAVA notions
String race; public class Chien { graphique. super_classe. Houah!"); } au A la simple. JAVA notions
String race; public class Chien { graphique. super_classe. Houah!"); } au A la simple. JAVA notions

06/10/2011 16:56

variable locale final = constante attribut/variable d'instance final = constante méthode d'instance final = méthode non surchargeable et non redéfinissable classe final = ne peut avoir de sous-classe

public = la variable ou la méthode (ou le constructeur) ou la classe est accessible partout variable d'instance : rarement public sauf si final. private les variables ou les méthodes (ou constructeurs) ne sont accessibles que par les membres internes de la classe

si il n'appelle pas explicitement le constructeur this() ou super (), alors un appel à super() est effectué, Si le constructeur appelle this() ou super(), ce doit être sa 1ère instruction. SIMPLIFIONS : un constructeur par défaut explicite doit exister dans la super-classe.

http://www.pasteur.fr/~llafit

attribut static = variable de classe = existe en un seul exemplaire quelque soit le nombre d'instanciation (ou sans instanciation) méthode static = méthode de classe = méthode "sans envoi de message" appliquée à la classe et non à un objet. code static = static { instructions } initialise les variables static d'une classe

protected protected = les variables ou les méthodes (ou constructeurs) ne sont accessibles que par les membres internes de la classe, de ses sous-classes et des classes du même package. classe protected = accessible que par ses sous-classes et des classes du même package.

une méthode abstraite ne contient pas de corps, mais doit être implémentée dans les sous-classes, une classe est abstraite si elle contient au moins une

private protected les variables ou les méthodes ne sont accessibles que par les membres internes de la classe, de ses sous-classes.

acces package = les variables ou les méthodes (ou constructeurs) ou classes ne sont accessibles que par les membres internes de la classe, et des classes du même package. abstract :

native : méthode écrite en C dans un fichier externe

méthode abstraite ; elle ne peut pas être instanciée, mais ses sous-classes non abstraites le peuvent. une interface est par défaut abstraite. autre modificateurs :

ses attributs et méthodes dans la super-classe. si un constructeur est définit dans une sous-classe :

pas de modificateur d'acces :

modificateur d'accès

public

JAVA notions

8 sur 11

16.

sous-classe : pas de modificateur d'acces : modificateur d'accès public JAVA notions 8 sur 11 16.
sous-classe : pas de modificateur d'acces : modificateur d'accès public JAVA notions 8 sur 11 16.
final static
final
static
sous-classe : pas de modificateur d'acces : modificateur d'accès public JAVA notions 8 sur 11 16.
sous-classe : pas de modificateur d'acces : modificateur d'accès public JAVA notions 8 sur 11 16.
sous-classe : pas de modificateur d'acces : modificateur d'accès public JAVA notions 8 sur 11 16.
sous-classe : pas de modificateur d'acces : modificateur d'accès public JAVA notions 8 sur 11 16.
sous-classe : pas de modificateur d'acces : modificateur d'accès public JAVA notions 8 sur 11 16.
sous-classe : pas de modificateur d'acces : modificateur d'accès public JAVA notions 8 sur 11 16.
sous-classe : pas de modificateur d'acces : modificateur d'accès public JAVA notions 8 sur 11 16.
sous-classe : pas de modificateur d'acces : modificateur d'accès public JAVA notions 8 sur 11 16.
sous-classe : pas de modificateur d'acces : modificateur d'accès public JAVA notions 8 sur 11 16.
sous-classe : pas de modificateur d'acces : modificateur d'accès public JAVA notions 8 sur 11 16.
sous-classe : pas de modificateur d'acces : modificateur d'accès public JAVA notions 8 sur 11 16.

06/10/2011 16:56

this(<paramètres>) appelle une méthode constructeur, et ne peut être utilisée qu'en première instruction dans un corps de constructeur. super(<paramètres>) appelle une méthode constructeur déclarée par la super-classe de l'objet en cours, et ne peut être utilisée qu'en première instruction dans un corps de constructeur.

public void compte (int nbre) { if (nbre == 2) this.aboie(); else super.aboie(nbre); } // un chien de race sait compter ! public ChienDeRace (String n, String c, String r) { super(n, c); race = r; } public ChienDeRace (String n, String r) { race = r; super.nom = n; } this fait référence à l'objet en cours, super fait référence à la super-classe de l'objet en cours et sont utilisable :

http://www.pasteur.fr/~llafit

c'est à dire définir le corps de toutes les méthodes abstraites.

synchronized : variable à accès en exclusion mutuelle pour les threads transcient volatile

[<modificateurs>] <type> <nomVariable> = <valeur>; [<modificateurs>] static final <type> <nomVariable>

public Chien (String n) { couleur = "inconnu"; nom = n ;} public Chien (String n, String c) { this(n) ; couleur = c; } une autre méthode et deux autres constructeurs pour la classe ChienDeRace :

} // dans la classe Grenouille, l"implémentation de l'interface

une interface est une "classe abstraite" ne comportant que

Une classe peut implémenter une ou plusieures interfaces,

[implements <interfaces>] { <constantes> <méthodes abstraites> } les modificateurs d'accés de l'interface peuvent être public ou (sans) package ; les constantes sont explicitement ou implicitement static et final :

public interface AnimalSavant { public void compte(int nbre) ; } public class Chien implements AnimalSavant { public String couleur; public Chien () { couleur = "inconnu"; } public void aboie () { System.out.println("Houah!"); } public void compte (int nbre) { for (int i = 0 ; i < nbre ; i++ ) this.aboie(); }

suivi d'un point pour accéder à une méthode ou un attribut de l'instance, en passage de paramètre à une méthode, en valeur de retour.

[<modificateurs d'accès>] interface <nomInterface>

deux autres constructeurs pour la classe Chien :

des constantes et des méthodes abstraites.

héritage multiple, interface

C'est l'héritage multiple de Java.

AnimalSavant est différente !

this, super

JAVA notions

9 sur 11

18.

17.

C'est l'héritage multiple de Java. AnimalSavant est différente ! this, super JAVA notions 9 sur 11
C'est l'héritage multiple de Java. AnimalSavant est différente ! this, super JAVA notions 9 sur 11
C'est l'héritage multiple de Java. AnimalSavant est différente ! this, super JAVA notions 9 sur 11
C'est l'héritage multiple de Java. AnimalSavant est différente ! this, super JAVA notions 9 sur 11
C'est l'héritage multiple de Java. AnimalSavant est différente ! this, super JAVA notions 9 sur 11
C'est l'héritage multiple de Java. AnimalSavant est différente ! this, super JAVA notions 9 sur 11
C'est l'héritage multiple de Java. AnimalSavant est différente ! this, super JAVA notions 9 sur 11

06/10/2011 16:56

try { int x=System.in.read(); System.out.println("caractère lu :" + (char)x); } catch (IOException e) {System.out.println(e.getMessage());} public char litUnChar() throws IOException { int x=System.in.read(); return (char)x ;} L'exécution de certaines instructions ou méthodes peuvent lever des (erreurs d'exécution) exceptions. Celles-çi sont organisées en classe, par exemple, la classe RuntimeException regroupe les incidents du genre : division par 0 (ArithmeticException), en dehors des bornes d'un tableau (IndexoutOfBoundsException), méthode appliquée à une référence nulle (NullPointerException),

[<modificateur>] <type> <nomMéthode> ([<paramètres formels>]); [<modificateur>] abstract <type> <nomMéthode> ([<paramètres formels>]); Une classe qui implémente une interface doit définir le corps de toutes ses méthodes abstraites. les sous-classes d'une super-classe qui implémente une interface, héritent (et peuvent redéfinir) des méthodes implémentées. Une interface peut hériter (par extends) d'une autre interface

RunTimeException. Mais une exception levée non propagée

et non capturée finit par provoquer l'arrêt de la "méthode du

méthode appelante si elles sont levées dansle corps de

http://www.pasteur.fr/~llafit

<corps de la méthode pouvant lever des exceptions >

dès qu'une exception est levée dans le corps de try, le

try { bloc d'instructions pouvant lever des exceptions

catch {autre_type_d_exception e) { traitement de e}

traitement de ce corps est terminé et catch définit le

} les exceptions listées sont propagées/transmises à la

Les Exceptions de la classe des IOException doivent être

Donc une exception peut être propagée jusqu'à une

= <valeur> ; les méthodes sont explicitement ou implicitement abstraites :

Exception et de générer/lever de telles exceptions pard'

} catch {type_d_exception e) { traitement de e} //

([<paramètres>]) throws <liste d'exceptions> {

définit l'exception à capturer et son traitement

exceptions (unchecked) non contrôlées : les Error et

méthode appelante qui la capture et la traite.

Il n'est pas obligatoire de capturer ou propager les

Il est possible de créer des nouvelles sous-classes

[<modificateur>] <type> <nomMéthode>

et en implémenter (par implements) d'autres.

throws, décaler/propager une exception :

traitement de l'exception capturée.

obligatoirement capturées ou propagées.

catch, capture d'exception :

la méthode traitée.

programme principal".

l'instruction throw.

exception

try

JAVA notions

10 sur 11

19.

: la méthode traitée. programme principal". l'instruction throw . exception try JAVA notions 10 sur 11
: la méthode traitée. programme principal". l'instruction throw . exception try JAVA notions 10 sur 11
: la méthode traitée. programme principal". l'instruction throw . exception try JAVA notions 10 sur 11
: la méthode traitée. programme principal". l'instruction throw . exception try JAVA notions 10 sur 11
: la méthode traitée. programme principal". l'instruction throw . exception try JAVA notions 10 sur 11

06/10/2011 16:56

http://www.pasteur.fr/~llafit

index

JAVA notions

11 sur 11