Java Comparaison C++ - 19/11/03 1
Du Java au C++
Un exemple de code en Java et C++
Quelques mots sur le C++
La similitude entre Java et C++
L’extension du C
Les différences syntaxiques
Le programme principal
Le fichier d’en-tête
Construction et destruction des objets
La surcharge des opérateurs
Les constantes
Les différences fonctionnelles
Le passage de paramètres
L’héritage multiple / les interfaces
Les templates
Divers
L’apport de Java
Java Comparaison C++ - 19/11/03 2
Un exemple de code en C++ et en Java
q Fichier C++ « Primitive.h »
#include “stream.h”
// Classe abstraite
class Primitive {
private :
int couleur;
public :
Primitive(int coul) {couleur = coul};
virtual ~Primitive() {};
vritual void Affiche() = 0;
}
q Fichier C++ « Point.h »
// classe concrète Point, dérive de Primitive
class Point : public Primitive {
private :
double coordx;
double coordy;
public :
Point(double,double,int);
~Point();
void Affiche();
}
Java Comparaison C++ - 19/11/03 3
q Fichier C++ « Point.C »
#include “Point.h”
Point::Point(double x,double y,int
couleur):primitive(couleur) {
coordx = x;
ccordy = y; }
Point::~Point(){}
void Point::Affiche() {
cout << “Coordonnée x : “ << coordx;
cout << “Coordonnée y : “ << coordy;}
q Fichier en Java
public abstract class Primitive {
private int couleur;
public Primitive(int couleur) {
couleur = coul;}
}
public class Point extends Primitive {
private double coordx;
private double coordy;
public Point(double x, double y,int couleur) {
super(couleur);
coordx = x;
ccordy = y;}
public void Point::Affiche() {
System.out.println(“Coordonnée x : “ + coordx);
System.out.println(“Coordonnée x : “ + coordy);}
}
Java Comparaison C++ - 19/11/03 4
Quelques mots sur le C++
q Des langages proches
Java et C++ sont syntaxiquement proches.
Les fonctionnalités sont globalement similaires
ØUn programmeur C++ peut passer à Java facilement à Java.
ØLa connaissance du C et du Java facilite l’apprentissage du
C++.
q Une extension du C
Le C++ est la version objet du C :
la syntaxe du C est « compatible » avec un compilateur C++
q Une approche classique
Pas de compatibilité du binaire entre plates-formes
Langage compilé en binaire machine.
Pas d’API mais des bibliothèques « standard » ou
commerciales
Standard Template Library
Open Inventor
Java Comparaison C++ - 19/11/03 5
Quelques différences syntaxiques
q Le programme principal
N’appartient pas à une classe
q Le fichier d’en-tête
C++ est compilé, tout identificateur doit être déclaré avant
d’être utilisé :
Présence d’un fichier « header » comme en C définissant les
prototypes des fonctions et des classes
q Construction et destruction des objets
Le C++ définit explicitement le destructeur. Cette fonction
sert essentiellement à libérer la mémoire (pas de mécanisme
de ramasse miette).
Java ne dispose pas de destructeur, mais on peut effectuer des
actions à la destruction par la méthode finalize.
1 / 8 100%
La catégorie de ce document est-elle correcte?
Merci pour votre participation!

Faire une suggestion

Avez-vous trouvé des erreurs dans linterface ou les textes ? Ou savez-vous comment améliorer linterface utilisateur de StudyLib ? Nhésitez pas à envoyer vos suggestions. Cest très important pour nous !