Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/369.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java .so文件所需的头文件信息_Java_Shared Libraries_Header Files - Fatal编程技术网

Java .so文件所需的头文件信息

Java .so文件所需的头文件信息,java,shared-libraries,header-files,Java,Shared Libraries,Header Files,我知道java没有像C/C++中那样的头文件概念。问题是关于为Java创建库文件(.so或.a)。当我们创建.so文件时,我们不需要为.so文件的使用者提供头文件(定义)信息吗?在java中,我们如何做到这一点?如果我们提供完整的java源代码,那么隐藏源代码的优势就消失了。我是不是遗漏了什么?有人能澄清一下吗?你说的“当我们创建.so文件时”是什么意思?Java通常没有.so文件。在正常的Java编程环境中,.class文件相当于.a,而.jar文件相当于.so。Java编译器可以从类路径上的

我知道java没有像C/C++中那样的头文件概念。问题是关于为Java创建库文件(.so或.a)。当我们创建.so文件时,我们不需要为.so文件的使用者提供头文件(定义)信息吗?在java中,我们如何做到这一点?如果我们提供完整的java源代码,那么隐藏源代码的优势就消失了。我是不是遗漏了什么?有人能澄清一下吗?

你说的“当我们创建
.so
文件时”是什么意思?Java通常没有
.so
文件。在正常的Java编程环境中,.class文件相当于.a,而.jar文件相当于.so。Java编译器可以从类路径上的.class和.jar中检索符号和类/方法签名来编译源代码,这样您就不需要头文件,也不需要满是源文件,只需要编译文件。