Python的几种文件类型
https://blog.csdn.net/answer3lin/article/details/89526817
DDL
https://baike.baidu.com/item/%E5%BA%93%E6%96%87%E4%BB%B6/2550595?fromtitle=DLL%E6%96%87%E4%BB%B6&fromid=4170556
在Windows中,许多应用程序并不是一个完整的可执行文件,它们被分割成一些相对独立的动态链接库,即DLL文件,放置于系统中。当我们执行某一个程序时,相应的DLL文件就会被调用。一个应用程序可使用多个DLL文件,一个DLL文件也可能被不同的应用程序使用,这样的DLL文件被称为共享DLL文件。
java
1,java可以编写成.exe,虽然是exe文件,但是不代表是windows可执行文件,尽管扩展名一样
2,可以打包成jar,需要有jdk支持,通过JVM运行,这个才是java真正的运行包。
3,.java是java程序的源代码文件
4,.class不是类的扩展名,JVM并不能直接运行java源文件,需要通过javac将java源文件编译成字节码文件,也就是.class文件,JVM在运行某个类的时候,通过加载指定该.class文件就可以,因为class文件名与类名相同,但是不能理解他俩是一回事,运行的是类,不是文件。
jar转换成exe的过程其实是没有必要的,因为要运行java程序必须有JVM,它所转换的exe和C++写出来程序的exe有区别的。不是同一个扩展名文件里面东西就一样。好比cmd里是可执行文件,但是C#编写出来的exe是微软中间码。
invoke()
invoke(调用)就是调用Method类代表的方法。可以实现动态调用,例如可以动态的传人参数,可以把方法参数化。
可以把方法参数化invoke(class, method),比如Test类里有一系列名字相似的方法setValue1、setValue2等等,可以把方法名存进数组v[],然后循环里invoke(test,v[i]),就顺序调用了全部setValue。
Constructor
Constructor是一个类,位于java.lang.reflect包下,它代表某个类的构造方法,用来管理所有的构造函数的类.