1 Cours de Programmation Orientée Objet JAVA Malick Ndoye Faculté des Sciences

1 Cours de Programmation Orientée Objet JAVA Malick Ndoye Faculté des Sciences et Techniques Département de Mathématiques et Informatique Octobre 2004 2 Plan du Cours Module 1 : Introduction à Java Module 2 : Techniques de base du langage Module 3 : Les types primitifs Module 4 : Les structures de contrôle Module 5 : Programmation Orientée Objet Module 6 : Les tableaux Module 7: L’héritage 3 Plan du cours (suite) Module 8 : Les chaînes de caractères Module 9 : Gestion des exceptions Module 10 : Threads Module 11: Entrées Sorties Module 12 : Les Swing GUI Module 13 : Contrôles, menus Module 14 :Gestionnaires des swing Module 15 : Textes et graphiques 4 Plan du cours (fin) Module 16: Collections et algorithmes Module 17 : Applets Module 18 : JDBC 5 Historique :Origines de Java • 1990 – Internet très peu connu, World Wide Web inexistant . – boom des PC (puissance) – Projet Oak de SUN Microsystems • Langage pour la communication des appareils électroniques . • 1993 – mars : le NCSA lance MOSAIC, le premier navigateur internet (protocole http, langage html), le web décolle... – été : Oak change d’orientation et s’adapte à la technologie internet • 1995 – mai 1995 : projet HotJava,, navigateur WEB, écrit par SUN en Java . Module 1 Introduction à Java 6 Plusieurs langages de programmation ont vu le jour : Langage machine Langage assembleur Langage algorithmique Langage orienté objet C, pascal,cobol, … C++, smalltalk, java Spécifique aux UAL -PORTABILITÉ EVOLUTIBITE - FIABILITÉ REUTISABILITE Les générations des langages de programmation 7  Imprégné du C++ mais améliorant ses insuffisances -> gestion automatique de la mémoire (Garbage collector) -> facilité de stockage des fichiers sur disque (sérialisation)  Une gigantesque API(Application Programming Interface) - une librairie de classes très importante (interface graphique, réseau, web, base de données, …) - portabilité sans mesure - langage de plus en plus utilisé et évoluant rapidement. Java : un langage objet 8 Interprétation Compilation Interprétation & Compilation Programme écrit en X Programme écrit en X Programme écrit en X Interpréteur de X Compilateur de X en langage machine Compilateur de X en Y (plus proche du langage Machine) Programme en Langage de Y Interpréteur de Y Programme en langage machine Programme interprété et compilé 9 …….. ……. .....… …….. …… …… java-compiler( javac) Interprétation par la Machine virtuelle Java pour les Systèmes d’exploitation PC Macintosh UNIX processeurs coté utilisateurs Code source coté dévelop peur Compilation en PSEUDO-CODE (byte-code) Le pseudo-code est universel c’est à dire indépendant du compilateur et de l’ordinateur où a lieu cette compilation. La Machine Virtuelle java ( JVM) 10 Programmation structurée Programmation objet Constitué objets Constitué Champs ( données) Méthodes Procédures Structures de données ( indépendantes des procédures) La Programmation Orientée Objet (P.O.O) 11 Le concept de classe correspond simplement à la généralisation de type que l’on rencontre dans les langages classiques. En effet, une classe n’est rien d’autre que la description d’un ensemble d’objets ayant une structure de données commune et disposant des mêmes méthodes. Les objets apparaissent alors comme des variables d’un tel type classe (en P.O.O, on dit aussi qu’un objet est une instance de sa classe ).Bien entendu, seule la structure est commune , les valeurs des champs étant propres à chaque objet. En revanche, les méthodes sont communes à l’ensemble des objets d’une même classe. Concept de classe 12 Principe d’encapsulation des données respect du Impossible d’agir directement sur les données La P.O.O :l’ encapsulation 13  Le JRE contient uniquement l'environnement d'exécution de programmes Java. Le JDK contient lui même le JRE. Le  JRE seul doit être installé sur les machines ou des applications java doivent être exécutées.  Depuis sa version 1.2, Java a été renommé Java 2. Les numéros de versions 1.2 et 2 désignent donc la même version.  Le JDK a été renommé J2SDK (Java 2 Software Development Kit) mais la dénomination JDK reste encore largement  utilisée.  Le JRE a été renommé J2RE (Java 2 Runtime Edition).  Trois éditions de Java existent :  J2ME : Java 2 Micro Edition ·  J2SE : Java 2 Standard Edition ·  J2EE : Java 2 Entreprise Edition ·  Sun fourni le JDK, à partir de la version 1.2, sous les plate−formes Windows, Solaris et Linux. JRE (Java Runtime Environnment) 14 J2ME( Java2 Micro Edition) J2SE( Java2 Standard Edition) J2EE( Java2 Entreprise Edition) - Applications sur environnement limité - systèmes portables -systèmes de navigation embarqués -Applications -Applet -API pour applications d’entreprise ( accès bases de données) - EJB( composants métiers) -JSP(Java Server Pages) -Servlet (HTML dynamique) Java 2 en trois éditions différentes 15 L’ API L'A.P.I. (Application Programming Interface) est un ensemble de classes utilisables par le programmeur . Un programme JAVA est constitué d'un certain nombre de classes : - des classes prédéfinies de l'API (environ un millier de classes) (Application Programming Interface) . - des classes définies par l'utilisateur classes définies pour ce programme API PROGRAMME classe : type de données + fonctions pour le manipuler Un programme utilise au maximum les fonctionnalités présentes dans l'A.P.I. 16 Applications et Applets Tout programme est soit une application soit une applet APPLICATION APPLET Les applications autonomes sont des programmes exécutés sous le contrôle du système d'exploitation. Les programmes C, C++ … sont des applications de ce type. Les applets sont exécutées lors de la visualisation par un navigateur WEB d'une page HTML. 17 Applications :la console vs G.U.I L’utilisateur fournit des infos au clavier sous forme de lignes de texte. Le programme décide du séquencement des opérations. L’opérateur est sollicité au moment voulu. L’interaction programme-opérateur se fait essentiellement via des composants graphiques. C’est la programmation évènementielle :le programme réagit à des évènements provoqués par l’utilisa- teur. Programme à interface console Programme à interface graphique : GUI (Graphical User Interface) FIN DU CHAPITRE 18 Module 2 Techniques de base du langage Premier programma Java autonome package home.user.java.essai; // un premier programme /* la version JAVA du classique Hello World */ public class HelloWorld { public static void main(String [ ] args) { System.out.println("Hello World !"); } } // Ceci est un commentaire finissant en fin de ligne /* ceci est un commentaires pouvant encadrer un nombre quelconques de caractères sur un nombre quelconque de lignes */ Hello World 19 Structure du programme (1/2) package home.user.java.essai ; public class HelloWorld { public static void main(String [ ] args) { System.out.println("Hello World !"); } } Définition de la classe avec une seule méthode( la fonction main ) en-tête de la classe 20 Structure du programme (2/2)  Le mot clé static précise que la méthode main n’est pas liée à une instance(objet) particulière de la classe.  Le paramètre String[ ] args est un tableau de chaînes de caractères qui permet de récupérer des arguments transmis au programme au moment de son lancement. Ce paramètre est OBLIGATOIRE en Java.  Le mot clé public dans public class sert à définir les droits d’accès des autres Classes (en fait de leurs méthodes) à la classe . [ A voir].  Le mot clé public dans public static void main est obligatoire pour que votre programme s’exécute. Il s’agit d’une convention qui permet à la machine virtuelle d’accéder à la méthode main . 21 Paquetage de la classe La notion de paquetage se définit comme étant un regroupement( ensemble)de classes en une structure commune. La classe définit ici (Hello World ) appartient au paquetage nommé : home.user.java.essai La classe a un nom simple : HelloWorld Le nom complet de la classe est : home.user.java.essai.HelloWorld On précisera qu’une classe appartient à un paquetage en plaçant en début de fichier l’instruction package nom_du_paquet ; 22 Contenu du programme Le programme est constitué d’une seule instruction : System.out.println("Hello World !"); System.out.println (argument) Affiche la valeur de argument puis passe à la ligne System.out.print (argument) Affiche la valeur de argument sans passer à la ligne 23 Exécution du programme(1/2) La sauvegarde du programme se fait impérativement dans un fichier qui porte le nom HelloWorld.java nom de la classe extension Le code source d’une classe publique doit toujours se trouver dans un fichier portant le même nom et possédant l’ extension .java. La classe contenant la méthode main est appelée la classe principale du programme. C’est cette classe qu’il faut exécuter. EN FAIT ON EXECUTE QUE LES INSTRUCTIONS DE LA METHODE main. 24 Exécution du programme(2/2) On procède à la COMPILATION de ce programme pour la génération du byte code. Si elle se passe bien( sans erreurs) on obtient un fichier d’extension .class . Ici, il s’agit de HelloWorld.class . javac HelloWorld.java HelloWorld.class Commande javac pour compiler le source extension indispensable java HelloWorld Commande java pour exécuter le byte code aucune extension ne doit figurer 25 Les commandes de base du langage javac : pour la compilation ( générer le .class). java : pour l’exécution ( du main). appletviewer : pour exécuter une applet. javadoc : pour générer une documentation automatique. 26 Catégories d’instructions package info.fst.jnd.pro; public uploads/Ingenierie_Lourd/ ndoye-java-course01.pdf

  • 23
  • 0
  • 0
Afficher les détails des licences
Licence et utilisation
Gratuit pour un usage personnel Attribution requise
Partager