Le Java a emprunté une grande partie de sa syntaxe de base au C, ce qui fait qu'il est relativement facile de traduire un programme simple de C en Java. Cela n'en fait évidemment pas un programme orienté objet, mais au moins il marche.
La recette de base est simple: on remplace le tout début du programme et de la fonction main, et le tour est (presque) joué. Comparez les deux programmes suivants:
// version C // compiler: "gcc test.c -lm -o test" // executer: "./test" #include <stdio.h> #include <math.h> double cube(double x) { return x*x*x; } int main(void) { double y,z; y=cube(3); z=sqrt(1+sin(y)); printf("z=%f\n",z); return 0; }
// version Java // compiler: "javac Test.java" // executer: "java Test" import static java.lang.Math.*; public class Test { static double cube(double x) { return x*x*x; } public static void main(String args[]) { double y,z; y=cube(3); z=sqrt(1+sin(y)); System.out.println("z="+z); } }
Vous pouvez remarquer que le printf() a également été échangé contre
une nouvelle instruction. C'est normal, printf n'est pas une
instruction C, c'est une fonction de la librairie C standard
(d'où le #include <stdio.h>
obligatoire au début du
programme). Or la librairie standard Java n'est pas la même (elle est
organisée différement, et beaucoup plus vaste). Vous pouvez essayer de
trouver la classe System
dans
la documentation
de la bibliothèque Java (API). Cherchez dans la colonne de gauche
en bas.