Cours java
Support de Cours Christophe Dony Universit´ Montpellier-II e
1
1.1
Le langage Java
Langage de programmation par objets
Langage de programmation Orient´ Objet (types abstraits, surcharge, polymorphisme d’inclusion, e liaison dynamique) Synth`se de Smalltalk (pas de variables de type pointeur, allocation dynamique, recup´ration dye e namique, machine virtuelle) et de C++ (Syntaxe, constructeurs, ...). C’est un C++ adapt´ pour plus e de simplicit´ d’utilisation. e
1.2
Bibliotheques
La machine virtuelle (l’interpr´teur) est livr´ avec un ensemble de biblioth`ques regroup´es logiquee e e e ment en API. API (Application Programming Interface) : l’interface ` une biblioth`que sp´cialis´e dans un certain a e e e domaine d’application. Ex API JDBC (Java Database Connectivity). L’implantation d’une API regroupe un o` plusieurs packages (cf. Chapˆ u ıtre 3). dans lesquels sont d´finis un ensemble classes et de m´thodes. e e Ex de packages: - java.lang regroupe les classes de base necessaire ` la d´finition de tout programme Java (Object, a e Exception, String, Thread). - java.math ... - java.net : classes pour la r´alisation d’applications r´seau. e e - java.util : Classes utilitaires pour la r´alisation d’applications classiques (structures de donn´es e e (Vecteur, Dictionnaire ...), Date, Time, Calendar, Ev`nements, ... e - java.io : Entr´es-Sorties, Serialisation, ... e
1.3
Principe d’ex´cution : Machine virtuelle - Portabilit´ - Mobilit´ e e e
Le code compil´ n’est pas du code directement ex´cutable mais un ensemble d’instruction interpr´tables e e e par la machine virtuelle Java. Java peut ˆtre ex´cut´ sous quasi tous les unix, sous windows, sous e e e macOS, ou dans des syst`mes embarqu´s poss´dant une puce javaOS. e e e Definition : Machine virtuelle : machine logicielle d´finie par un ensemble d’instruction et une