用java调c
ndk:
native development kit
jni:
java native interface

为什么要用java调c
1、java可以被反编译,c生成程序不能反编译
2、c比java快
3、核心代码用c写,在android用java做界面;iphone上用oc做界面;在windows电脑上,用c#做界面;在linux上用c++做界面

java是运行在虚拟机上,虚拟机是一个程序,在windows上,虚拟机程序是用c写的

相关NDK教程:
​​​Android:JNI 与 NDK到底是什么?​

​Android Sudio配置NDK​

​JNI相关报错​