Non, t pas obligé d'appeler de API c !
En fait, tu vas devoir créer des methodes du type "native" en java.
Ensuit, t'utilisera javah qui te créera un .h qui correspond à la description, en C, de ta méthode java. Il faudra que tu crée une dll en C, qui implémente la définition de fonction du .h généré. à ce moment là, t'as un point d'entrée dans du C.
Pour faire des échanges des données entre Java et C, c plus compliqué...