Java est un langage Objet
–Syntaxe de
C++, gestion dynamique de la  mémoire de
SmallTalk
–Langage
objet pur, contrairement à C++, qui permet une programmation de type C
–Compromis
entre un langage objet statique (C++)  et
dynamique (SmallTalk)
–Livré avec
des packages de classes riches et variés  (Réseau, Web, Base de Donnée, Téléphonie, …)
Java est robuste :
–Compilateur
très strict, en particulier car:
• Contrôle
de typage fort (pertes de précision interdites)
•
Vérification que les erreurs identifiées (appelées  • Vérification que les erreurs identifiées
(appelées exception) sont traitées par le développeur
–La gestion
de la mémoire n’est plus à la charge du développeur (Garbage collector, pas de
pointeurs)
–Un
débordement d’index dans un tableau provoque une erreur ( => la mémoire
n’est pas écrasée)
Java est portable:
·        
Un code source Java est compilé pour  générer un code assembleur virtuel: Le byte
code. 
·        
Le byte code est exécuté par un logiciel: la Machine
Virtuel. Seule la Machine Virtuelle change d’une machine à l’autre. Un
programme Java est donc exécutable sur toute machine pour laquelle une machine
virtuelle existe.
·        
Le byte code est conçu pour : 
§  Le byte code est
conçu pour :
§  Etre rapidement
interprété par une machine virtuelle (java est en fait un langage semi-compilé
et semi-interprété)
§  Etre optimisable
au moment de son exécution (dépendant de la plate-forme d’exécution)
§  Etre vérifiable
(système de vérification d’intégrité du code)



0 commentaires:
Enregistrer un commentaire