COURS DE PROGRAMMATION ORIENTEE OBJET :

Slides:



Advertisements
Présentations similaires
La programmation orientée objet avec Java L3-MIAGE Plan
Advertisements

Premier programme en C :
La boucle for : init7.c et init71.c
Les fonctions A quoi ça sert ?
A RECUPERER EN ENTRANT Le polycopié de Caml Partie 1
Rappels C.
Formation universitaire à .NET: Introduction à C#
Le mécanisme des exceptions
Introduction à la Programmation Orientée Objet Retour sur les principaux concepts SI3 MAM3 Hydro Nathan Cohen
La classe String Attention ce n’est pas un type de base. Il s'agit d'une classe défini dans l’API Java (Dans le package java.lang) String s="aaa"; // s.
GEF 243B Programmation informatique appliquée Expressions et opérateurs.
Approfondissement du langage
(Classes prédéfinies – API Java)
Cours n°2M2. IST-IE (S. Sidhom) UE 303 Promo. M2 IST-IE 2005/06 Conception dun système d'information multimédia Architecture trois-tiers : PHP/MySQL &
C.
Programmer en JAVA par Tama
JAV - TD 6 Structures de données JAVA
TD 1 IJA Introduction Objet, méthode, attribut Classe, instance
IJA - TD 2 Bases du langage
Points importants de la semaine Les commentaires. Les variables. Les instructions conditionnelles. Les instructions itératives (les boucles).
Semaine #1 INF155 par Frédérick Henri.
Programmation orientée objet
Introduction à la programmation (420-PK2-SL) cours 12 Gestion des applications Technologie de linformation (LEA.BW)
Les méthodes en java Une méthode est un regroupement d’instructions ayant pour but de faire un traitement bien précis. Une méthode pour être utilisée.
RESUMES Module II1 SOMMAIRE CYCLE 1 : Saisir – Afficher – Données
33 Types de données et opérateurs. 3-2 Objectifs A la fin de ce cours, vous serez capables de : Décrire les types de données primitives Déclarer et initialiser.
Question Comment le compilateur fait-il pour évaluer une expression telle que : A + B lorsque A et B sont des données de types arithmétiques différents.
77 Utilisation des classes (suite). 7-2 Objectifs A la fin de ce cours, vous serez capables de : Définir des méthodes surchargées dans une classe Fournir.
Introduction à la programmation (Java)
Langage Oriente Objet Cours 2.
Bases de la programmation en C++ 1 Les enchaînementsdinstruction Séquentiels. Exécutions dinstructions les unes à la suite des autres. Instructions séparées.
Révision des notions OO et Java Semaine 1 Jian-Yun Nie.
Points importants de la semaine Le préprocesseur. La conversion de types. Les fonctions.
Principes de programmation
Contrôle de types Les types en programmation Expressions de types Un contrôleur de types Equivalence de types Conversions de types Généricité.
IFT 6800 Atelier en Technologies d’information
LIFI-Java 2004 Séance du Jeudi 9 sept. Cours 1. La notion de langage Décrire une tâche à effectuer –programme Écrire à un haut niveau –facile pour lutilisateur.
COURS DE PROGRAMMATION ORIENTEE OBJET :
CSI 1502 Principes fondamentaux de conception de logiciels
CSI 1502 Principes fondamentaux de conception de logiciels
99 Réutilisation du code grâce à l'héritage. 9-2 Objectifs À la fin de ce cours, vous serez capables de : Définir l'héritage Utiliser l'héritage pour.
Les Opérateurs Ils régissent toutes les opérations ou transformations sur les valeurs des variables. Opérateur d'affectation Opérateurs arithmétiques Opérateurs.
L’essentiel du langage C
Animateur : Med HAIJOUBI
2.1 - Historique Chapitre 2 : Introduction au langage C++
1 Fichers Binaires, Accès Direct et Objets. 2 Données binaires. Il s'agit ici de lire et écrire des données binaires par opposition à du texte. Pour ce.
Cours 1 1 Java. Cours 1 2 Plan général 1.Introduction 2.Les types primitifs, évaluation d’expressions 3.Instructions for, if…. 4.Introduction de l’objet,
SIF-1053 Architecture des ordinateurs
Un survol du language C.
CSI3525: Concepts des Langages de Programmation Notes # 13: Introduction au SmallTalk.
Les tests.
Cours C++ Fonctions Surcharge d’opérateurs Passage d’arguments
Master 1 SIGLIS Java Lecteur Stéphane Tallard Chapitre 3 – Classes et objets en Java Master 1 SIGLIS1 Java Lecteur - Chapitre 3 Classes et objets en Java.
Strings et Tableaux en Java
Les classes et les objets Les données finales class A { … private final int n = 20 ; // la valeur de n est définie dans sa déclaration … } class A { public.
IUT du Limousin L.U.P Michel Vergnaud Programmation Objet - Java.
Introduction au langage JAVA
Cours 4 (14 octobre) Héritage. Chapitre III Héritage.
1 Programmation Avant-propos. 2 Programmation / Avant-propos  Programmation Ensemble des activités permettant l'écriture de programmes informatiques.
Master 1 SIGLIS Java Lecteur Stéphane Tallard Chapitre 2 – Java Premiers pas Master 1 SIGLIS1 Java Lecteur - Chapitre 2 - Java Premiers Pas.
Langage de programmation
1 Cpt JAVA : Eclipse (bis) Debogage. 2 Code à tester public class siecle { int t; public siecle() { super(); t=1; } static public boolean vrai() { return(false);
PRO-1027 Programmation Scientifique en C
Langage et Concepts de Programmation Orientée-Objet Pôle Informatique 2007/2008 École Nationale Supérieure des Mines de Saint-Étienne Laurent Vercouter.
pour les programmeurs en C++ Java 2 Part 1 3 Histoire de Java Projet de connexion des machines: 1991 Le nom Java a été introduit dans un café Développé.
Philippe Gandy - 8 septembre 2015 Basé sur les notes de cours de Daniel Morin et Roch Leclerc.
Philippe Gandy - 22 septembre 2015 Basé sur les notes de cours de Daniel Morin et Roch Leclerc.
Philippe Gandy - 15 septembre 2015 Basé sur les notes de cours de Daniel Morin et Roch Leclerc.
BlueJ_III 1 Java, les objets : tout de suite ! Interaction entre objets Notes de cours associées au chapitre 3 tutorial BlueJ
C++ BY AURÉLIEN MODULO MARION. PLAN DES TROIS PRÉSENTATIONS C++ avancé C++ orienté objet Bases de C++
Transcription de la présentation:

COURS DE PROGRAMMATION ORIENTEE OBJET : Rappels des bases en Java, Objets et Classes

Rappels des bases en Java Construction d’un programme JAVA : Un programme Java est composé d’un ensemble de fichiers. X3.java X2.java X1.java public class X1 { … public static void main (String[] args) {… } public interface X2 { … } Chaque fichier doit comprendre une unique classe publique ou bien une unique interface publique

Rappels des bases en Java Compilation et exécution d’un programme JAVA Chaque fichier Xi.java est compilé. Le code source Java est transformé en une classe compilée Xi.class qui contient le pseudo-code de la machine virtuelle Le programme est lancé en exécutant le fichier X1.class qui contient la méthode main.

Rappels des bases en Java Les variables et leur type Une variable est soit une référence à un objet soit d’un des huit types primitifs

Rappels des bases en Java Les variables et leur type Types de référence Tableau Classe Interface Valeurs d’une telle variable : null contient l’adresse d’un objet instancié.

Rappels des bases en Java Les variables et leur type Types de référence Exemples String str; String adresse = null; String nom = new String (" Dupont "); str String str String nom " Dupont " String

Rappels des bases en Java Les variables et leur type Types primitifs boolean Types numériques Types entiers byte short int long char Types à virgule flottante float double

Rappels des bases en Java Les variables et leur type Types primitifs Exemples: boolean trouve = true; char c = ’b’; int i = 3; float f = 45.6565F double d;

Conversions légales de types numériques Rappels des bases en Java Les variables et leur type Types primitifs Conversions légales de types numériques char byte short int long Conversion avec risque de perte d’information Conversion sans perte d’information float double Exemple : int n= 123456789; float f = n; //f vaut 1.23456792E8

Rappels des bases en Java Les variables et leur type Types primitifs Transtypage: Permet de convertir un type plus grand en un type plus petit. Cette conversion pouvant entraîner des pertes d’information. Exemple : double d = 5.6545; int i = (int)d; // i = 5

Rappels des bases en Java Instructions conditionnelles if (condition) instruction ; if (condition) instruction1 else instruction2 ; Séquences répétées de if ….else if … Opérateur ? : l’expression condition ? expression 1 : expression 2 est évaluée à expression1 si la condition est vraie, à expression2 sinon.

Rappels des bases en Java Exemple 1 : Méthode fournissant le minimum de deux entiers m et n passés en paramètres. public class Ex1 { public int min ( int x, int y ){ if (x<y) { return x; } else { return y; }

Rappels des bases en Java Instructions itératives while (condition) { … }; do instruction while (condition); for (expr1;expr2; expr3) instruction - expr1 est l’expression d’initialisation, - expr2 est la condition de continuation, si sa valeur booléenne est false, sortie de la boucle. - expr3 est l’expression d’incrémentation.

Rappels des bases en Java Tableaux Un tableau est une structure de données qui stocke une série de valeurs du même type. Exemple : Déclaration d’un tableau d’entiers: int[ ] tab; Création d’un tableau de 10 entiers: int[ ] tab = new int[10]; Initialisation directe d’un tableau int[ ] tab1 = {23, 45, 6, 78};

Rappels des bases en Java Tableaux Parcours du tableau tab: for (int i = 0; i < tab.length; i++) System.out.println(tab[i]); Le JDK 5.0 a introduit une construction de boucle permettant de parcourir chaque élément d’un tableau sans avoir à nommer les indices. for (int element : tab) System.out.println(element);

Rappels des bases en Java Tableaux Copie d’une variable tableau dans une autre int[ ] tab1 = {23, 45, 6, 78}; int [ ] tab2 = tab1; tab1 et tab2 font référence au même tableau. 23 45 6 78 tab1 tab2

Objets et Classes Principes de la programmation orientée objets: Un programme est constitué d’objets qui interagissent pour fournir les fonctionnalités attendues. Chaque objet peut être considéré comme un fournisseur de services utilisés par d’autres objets. Un objet possède des propriétés et peut accomplir certaines opérations. On ne se préoccupe pas de savoir comment un objet est implémenté pour utiliser ses services.

Objets et Classes Vocabulaire Classe : modèle décrivant les caractéristiques communes à plusieurs objets Objet : instance d’une classe Champs : données d’un objet. Méthodes : services fournis par l’objet, fonctions agissant sur les données. Méthodes habituelles : Constructeurs Accesseurs Mutateurs Utilitaires

Objets et Classes Caractéristiques d’un objet Un comportement : déterminé par les méthodes que l’on peut appeler. Un état : déterminé par les valeurs des champs à un instant donné. Une identité

Objets et Classes Exemple : Création de la classe CompteBancaire: Propriétés d’un compte : Nom Adresse Numéro Solde Opérations Créer un compte en passant le numéro, le nom et l’adresse en paramètres, solde=0. créditer débiter

Objets et Classes public class CompteBancaire { String nom ; String adresse ; int numero ; int solde ; public CompteBancaire(int numero, String nom,String adresse){ this.numero = numero; this.nom= nom; this.adresse=adresse; this.solde = 0; } public void crediter(int montant){ solde = solde + montant; public void debiter(int montant){ solde = solde - montant;

Objets et Classes Création d’objets On crée un objet en appelant un constructeur. Exemple pour la classe CompteBancaire : new CompteBancaire("Dupont","Blois"); Déclaration de variables : CompteBancaire c1 = new CompteBancaire("Dupont", "Blois"); CompteBancaire c2 = c1; CompteBancaire C1 et C2 font référence au même objet. C1 Nom =Dupont Adresse =Blois numero=10 Solde=0 C2

Objets et Classes Appel de méthode Paramètres des méthodes Créditer le compte c1 de 100 Euros c1.crediter (100); Paramètres des méthodes Les paramètres sont toujours passés par valeur : La méthode reçoit une copie de toutes les valeurs de paramètre. Une méthode ne peut pas modifier un paramètre de type primitif. Une méthode peut modifier l’état d’un paramètre objet.

Objets et Classes Principe d’encapsulation Un objet ne doit jamais manipuler de façon directe les données internes d’un autre objet. Toute communication se fait par l’intermédiaire d’appels de méthodes.

Objets et Classes Modificateurs concernant une interface, une classe, un champ ou une méthode. public : accessible depuis n’importe quelle classe. protected : accessible uniquement depuis la classe ou ses sous-classes. private : accessible uniquement depuis la classe.

Objets et Classes Modificateurs Modificateur Classe Champ Méthode final Ne peut être décompos ée en sous- classes Sa valeur ne peut être modifiée Ne peut être remplacée dans une sous-classe static Sans objet Une seule instance existe pour tous les objets de la classe N’opère pas sur les objets, ne peut accéder aux champs d’instance, seulement aux champs statiques

Objets et Classes public class CompteBancaire { private String nom ; private String adresse ; private int numero ; private int solde; // solde de type int pour simplifier //variable de classe permettant de gérer les numéros auto. private static int numeroSuivant =1; public CompteBancaire(String nom,String adresse){ this.nom= nom; this.adresse=adresse; this.solde = 0; this.numero=numeroSuivant; numeroSuivant ++; } public String getNom(){ return nom; public void setNom(String nom){ this.nom = nom; public String getAdresse(){ return adresse;

Objets et Classes public void setAdresse(String adresse){ this.adresse = adresse; } public int getNumero(){ return numero; public int getSolde(){ return solde; //pas de méthode setSolde (int s) //le solde ne peut être modifié qu’en créditant ou débitant le compte public void crediter(int montant){ solde = solde + montant; public void debiter(int montant){ solde = solde - montant;

Objets et Classes Exemple sous Eclipse

Objets et Classes Packages Les classes peuvent être regroupées de manière logique dans des ensembles appelés packages. Une classe peut utiliser toutes les classes de son propre package. Une classe peut utiliser toutes les classes publiques des autres packages en les important : Exemple : import java.util.*;

Classes particulières Les classes enveloppes Chaque type primitif a une classe correspondante, nommée classe enveloppe. Type primitif boolean byte char short Classe enveloppe Boolean Byte Chararcte r Short Type primitif int long float double Classe enveloppe Integer Long Float Double

Classes particulières Les classes enveloppes Les classes enveloppes fournissent les méthodes de base permettant de convertir des chaînes de chiffres en nombre int x = Integer.parseInt (s);

Classes particulières La classe java.util.Scanner Depuis le JDK 5.0 Un objet de type Scanner va décomposer son entrée en mots en utilisant un séparateur, qui par défaut est l’espace vide. Méthodes de la classe Scanner pour lire les entrées String s = in.nextLine(); String mot = in.next(); int n = in.nextInt(); double d = in.nextDouble();

Classes particulières La classe java.util.Scanner permet de lire les entrées depuis un objet de type String (ex : String leTexte) Scanner sc = new Scanner (leTexte); int i = sc.nextInt(); depuis la fenêtre de la console On construit un objet Scanner attaché à l’unité « d’entrée standard » System.in : Scanner sc = new Scanner(System.in); int i = sc.nextInt(); ...