学习jdk jre笔记

JDK(Java 开发套件)
JRE(Java执行环境,,Java Runtime Environment)
JVM(Java 虚拟机,Java Virtual Machine)


這個意思是說,您輸入 javac.exe 和輸入
java -classpath d:\j2sdk1.4.0\lib\tools.jar com.sun.tools.javac.Main
會得到相同的結果。这里的javac只是一个wrapper,制作的目的是为了让开发者免于输入太长的命令
命令通过java.exe找到jre,然后找到Main函数 启动类!!
而我认为 java是通过jvm.dll启动的!!

JDK 裡面的工具幾乎是用 Java 所撰寫的,
所以 JDK 本身就是 Java 應用程式,因此要使用 JDK 附的工具來開發 Java 程式,也必須要自行附一套 JRE 才行,這就是<jdk 安裝目錄>\jre 底下需要一套JRE 的原因。而位於 Program File\底下的那套 JRE就是拿來執行我們自己所撰寫的 Java 應用程式

System32下的java.exe
而javac在path下的路径中只有在java_home/bin下才有javac
所以编译程序会自动加载JDK下的那套jre及其下面的包!
java/jre/bin下面没有javac.exe
因为这个只是针对java程序的使用者
而对于java。exe不一样了 他会加载java/jre下的包
如果你要扩展包的时候,要注意了

如果设置path为执行java程序时把path设置为jdk/bin,就不会出现问题了

执行java命令的时候 会按照path的顺序查找java.exe,他会先找到window/system32下面的java.exe.如果你把这个java改名 他会在path的目录下查找java.exe
假如我设置了path中有java_home(jdk)/bin,然后我访问java -server -version 可以访问
但这个命令只有在访问jdk下面的java.exe时才能成功,因为他下面有server文件夹和它里面的jvm.dll,其实相当于启动了服务虚拟器!
他会执行program files/java/jre的下面的包,。。。就相当于一个客户端的作用 看bin下面的jvm.dll就能知道!!
只是运行程序所以就没必要有个javac
而jdk下面的jre是为开发用的!!


java 不是通过tool.jar中的Class文件启动的!通过看图标就能看出来 !也是为什么jre下面不用tool这个包!!
java.exe他会关联jar文件!然后启动jar文件!!
javac.exe 和輸入
java -classpath d:\j2sdk1.4.0\lib\tools.jar com.sun.tools.javac.Main 效果是一样的
也就是说javac是通过java进程启动的!
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值