I. Eléments de Java

publicité
I. Eléments de Java
1) Programmes simples
2) Types simples et instructions
3) Attribut, méthode, constructeur
4) Interface
5) Classe interne
6) Classe anonyme
7) Entrée-Sortie
Pas d’héritage
Pas d’exception
De l’assert
1) Programmes Java
Programme = {Classe}
+ 1 méthode main dans au moins une classe
Exemple : Bonjour.java
public class Bonjour {
public static void main(String[] arg) {
System.out.println(”Bonjour”);
}
}
Une classe = {attribut d’objet ou de classe }
∪ {constructeur}
∪ {méthode d’objet ou de classe}
Un objet = instance de classe
2) Types simples et instructions
char
Les types simples
boolean
byte
short
int
long
float
double
Chaînes de caractères String (voir l’API)
Tableau (voir l’API Arrays)
int[] premiers = {2,3,5,7,11,13};
int[] pairs;
pairs = new int[]{0,2,4,6,8};
int[] anonyme = new int[5];
Instruction if else, switch, for, while, do while
Exemple PGCD, Premier, Erathosthene
3) Attribut, méthode, constructeur
Attribut
“rien”
public
protected
private
“rien” “rien” <type> <nom> “rien” ;
= <valeur>
static
final
de classe
constante
Modificateur de visibilité (package = {classe})
“rien” : Visible par tout le package
public : Visible par toutes les classes
protected : Visible par tout le package et toutes les sous-classes
private : Visible uniquement par la classe
Méthode
“rien”
public
protected
private
“rien” “rien” <type> <nom> (paramètres) {code}
static
final
de classe
pas d’héritage possible
Constructeur
“rien” <nom de la classe> (paramètres) {code}
public
protected
private
Le mot clé this
référence l’objet courant
4) Interface
Donne une spécification externe à une classe
public interface Pile {
public boolean isEmpty();
public void push(Object o);
public Object pop();
}
public interface ListPile implements Pile { ... }
Les méthodes sont publiques
Les attributs sont des constantes publiques
Evaluation qualitative et quantitatives
d’implantations de piles
ArrayPile
Pile
ListPile
LinkedListPile
ArrayListPile
Evaluation qualitative
- Ecrire un jeu de test
- Test de front
Evaluation quantitative
- Mesurer le temps d’exécution d’une séquence d’instructions
5) Classe interne
Classe interne de classe
public class A {
...
public static class B {
...
}
...
}
ʐ Définit la classe A.B
ʐ Une instance est obtenu par new A.B(...)
Exemple : SimpleList.java, ListPile.java
Classe interne d’objet
public class A {
...
public class B {
...
}
...
}
ʐ Définit la classe A.B
ʐ Une instance est obtenu par a.new B(...)
ʐ Un objet de la classe A.B
est associé à un objet de la classe A
Exemple : SimpleList.java
6) Classe anonyme
Un exemple
public class beepAction implements ActionListener {
public void actionPerformed (ActionEvent e) {
System.out.print(”.”);
}
}
Timer timer = new Timer(1000, new beepAction());
est équivalent à
Timer timer = new Timer(1000,
new ActionListener {
public void actionPerformed (ActionEvent e) {
System.out.print(”.”);
}
}
);
7) Entrée/Sortie
FileInputStream
System.in
implements
FileNotFoundException
implements
InputStreamReader
utilise
BufferReader
StringTokenizer
readLine()
IOException
StringTokenizer(String)
boolean hasMoreTokens()
Strin nextToken()
Téléchargement