腾讯云
开发者社区
文档
建议反馈
控制台
登录/注册
首页
学习
活动
专区
工具
TVP
最新优惠活动
文章/答案/技术大牛
搜索
搜索
关闭
发布
首页
学习
活动
专区
工具
TVP
最新优惠活动
返回腾讯云官网
Java学习123
专栏成员
举报
205
文章
535261
阅读量
47
订阅数
订阅专栏
申请加入专栏
全部文章(205)
其他(41)
java(32)
linux(29)
eclipse(16)
数据库(13)
tomcat(13)
python(12)
sql(11)
apache(11)
windows(10)
oracle(9)
jdk(7)
xml(6)
ide(6)
centos(6)
http(6)
编程算法(6)
shell(6)
https(6)
云数据库 SQL Server(5)
spring(5)
开源(5)
jvm(5)
.net(4)
servlet(4)
html(4)
api(4)
maven(4)
存储(4)
ssh(4)
ftp(4)
php(3)
django(3)
git(3)
svn(3)
unix(3)
容器(3)
网络安全(3)
erp(3)
jquery(2)
打包(2)
nginx(2)
分布式(2)
缓存(2)
压力测试(2)
面向对象编程(2)
grep(2)
rpc(2)
kernel(2)
join(2)
官方文档(1)
自动驾驶(1)
ios(1)
ruby(1)
go(1)
bash(1)
angularjs(1)
react(1)
css(1)
json(1)
ajax(1)
qt(1)
sqlite(1)
云数据库 Redis(1)
memcached(1)
access(1)
phpmyadmin(1)
mvc(1)
github(1)
jar(1)
搜索引擎(1)
lucene/solr(1)
ubuntu(1)
海外加速(1)
SSL 证书(1)
人工智能(1)
网站(1)
企业(1)
express(1)
sass(1)
数据迁移(1)
hadoop(1)
gui(1)
yum(1)
dns(1)
spring boot(1)
zookeeper(1)
cdn(1)
tcp/ip(1)
jenkins(1)
gcc(1)
iis(1)
spring cloud(1)
socket编程(1)
大数据(1)
微信(1)
安全(1)
小程序(1)
数据结构(1)
系统架构(1)
nat(1)
fiddler(1)
pipe(1)
process(1)
semaphore(1)
union(1)
笔记(1)
编程语言(1)
磁盘(1)
服务(1)
数据类型(1)
搜索文章
搜索
搜索
关闭
JDK,JRE,JVM区别与联系
jdk
jvm
面向对象编程
api
编程算法
JVMJDKEclipseJava企业应用 很多朋友可能跟我一样,已经使用JAVA开发很久了,可是对JDK,JRE,JVM这三者的联系与区别,一直都是模模糊糊的。 今天特写此文,来整理下三者的关系。 JDK : Java Development ToolKit(Java开发工具包)。JDK是整个JAVA的核心,包括了Java运行环境(Java Runtime Envirnment),一堆Java工具(javac/java/jdb等)和Java基础的类库(即Java API 包括rt.jar)。 最主流的JDK是Sun公司发布的JDK,除了Sun之外,还有很多公司和组织都开发了属于自己的JDK,例如国外IBM公司开发了属于自己的JDK,国 内淘宝也开发了属于自己的JDK,各个组织开发自己的JDK都是为了在某些方面得到一些提高,以适应自己的需求,比如IBM的JDK据说运行效率就比 SUN的JDK高的多。但不管怎么说,我们还是需要先把基础的Sun JDK掌握好。 JDK有以下三种版本: J2SE,standard edition,标准版,是我们通常用的一个版本J2EE,enterpsise edtion,企业版,使用这种JDK开发J2EE应用程序J2ME,micro edtion,主要用于移动设备、嵌入式设备上的java应用程序 我们常常用JDK来代指Java API,Java API是Java的应用程序接口,其实就是前辈们写好的一些java Class,包括一些重要的语言结构以及基本图形,网络和文件I/O等等 ,我们在自己的程序中,调用前辈们写好的这些Class,来作为我们自己开发的一个基础。当然,现在已经有越来越多的性能更好或者功能更强大的第三方类库 供我们使用。 JRE:Java Runtime Enviromental(java运行时环境)。也就是我们说的JAVA平台,所有的Java程序都要在JRE 下才能运行。包括JVM和JAVA核心类库和支持文件。与JDK相比,它不包含开发工具——编译器、调试器和其它工具。 JVM:Java Virtual Mechinal(JAVA虚拟机)。JVM是JRE的一部分,它是一个虚构出来的计算机,是通过在实际的计算机上仿真模拟各种计算机功能来实现的。 JVM有自己完善的硬件架构,如处理器、堆栈、寄存器等,还具有相应的指令系统。JVM 的主要工作是解释自己的指令集(即字节码)并映射到本地的 CPU 的指令集或 OS 的系统调用。Java语言是跨平台运行的,其实就是不同的操作系统,使用不同的JVM映射规则,让其与操作系统无关,完成了跨平台性。JVM 对上层的 Java 源文件是不关心的,它关注的只是由源文件生成的类文件( class file )。类文件的组成包括 JVM 指令集,符号表以及一些补助信息。 下图很好的表面了JDK,JRE,JVM三者间的关系: 我们开发的实际情况是:我们利用JDK(调用JAVA API)开发了属于我们自己的JAVA程序后,通过JDK中的编译程序(javac)将我们的文本java文件编译成JAVA字节码,在JRE上运行这些 JAVA字节码,JVM解析这些字节码,映射到CPU指令集或OS的系统调用。
Java学习123
2021-12-28
1.6K
0
eclipse中使用maven创建项目和更新项目JDK版本默认是1.5解决方法
jdk
java
maven
<profile> <id>jdk-1.8</id> <activation> <activeByDefault>true</activeByDefault> <jdk>1.8</jdk> </activation> <properties> <maven.compiler.source>1.8</maven.compiler.source> <maven.compiler.target>1.8</maven.compiler.target> <maven.compiler.compilerVersion>1.8</maven.compiler.compilerVersion> </properties> </profile>
Java学习123
2021-12-28
400
0
linux下同时安装多个tomcat实例
linux
tomcat
jdk
环境:rhel5.5 64bit 所需要的包: Jdk-6u21-linux-x64-rpm.bin Apache-tomcat-5.5.33.tar.gz 安装步骤 1. chmod +x Jdk-6u21-linux-x64-rpm.bin 2. ./jdk-6u21-linux-x64-rpm.bin 3. ln –s /usr/java/jdk 1.6.0_21 /usr/jdk 4. tar zxvf apache-tomcat-5.5.33.tar.gz -C /usr/local 5. ln
Java学习123
2018-05-16
1.5K
0
Java中的日志——Java.util.logging、log4j、commons-logging
java
jdk
apache
Java中给项目程序添加log主要有三种方式,一使用JDK中的java.util.logging包,一种是log4j,一种是commons-logging。其中log4j和commons-logging都是apache软件基金会的开源项目。这三种方式的区别如下: Java.util.logging,JDK标准库中的类,是JDK 1.4 版本之后添加的日志记录的功能包。 log4j,最强大的记录日志的方式。可以通过配置 .properties 或是 .xml 的文件, 配置日志的目的地,格式等等。 comm
Java学习123
2018-05-16
1.1K
0
MyEclipse10.7安装jad反编译插件
eclipse
jdk
java
1.下载反编译工具jad(下面提供下载) 将下载下来的jadstar158.zip解压缩,将jad.exe文件放入jdk安装目录下 如:C:\Program Files\Java\jdk1.6.0_20\bin 下载eclipse反编译插件net.sf.jadclipse_3.3.0.jar(下面提供下载) 将 import java.io.File; import java.util.ArrayList; import java.util.List; /** * MyEclips
Java学习123
2018-05-16
757
0
Eclipse报内存溢出
eclipse
tomcat
jdk
(1)在配置tomcat的JDK里面设置。Window-->proference->Myeclipse-->servers-->Tomcat5-->JDK里面设置: -Xms500m -Xmx1024m -XX:PermSize=64M -XX:MaxPermSize=256m -XX:ReservedCodeCacheSize=48m <!--StartFragment --> (2)elipse.ini -startup plugins\org.eclipse.equinox.launcher_1.0.
Java学习123
2018-05-16
1.9K
0
怎么将类似\u6570\u636e\u5e93的东西转化为汉字
jdk
nat
命令..\jdk1.8_64\bin\native2ascii.exe是JDK自带的转码工具 将中文转码为UTF8(\u6570\u636e\u5e93)命令格式: native2ascii -encoding gb2312 before.properties after.properties 将转码后的字符转换回中文命令格式: native2ascii -reverse after.properties before.properties before.properties文件中是转码前的中文,
Java学习123
2018-05-16
933
0
没有更多了
社区活动
【纪录片】中国数据库前世今生
穿越半个世纪,探寻中国数据库50年的发展历程
立即查看
Python精品学习库
代码在线跑,知识轻松学
立即查看
博客搬家 | 分享价值百万资源包
自行/邀约他人一键搬运博客,速成社区影响力并领取好礼
立即体验
技术创作特训营·精选知识专栏
往期视频·千货材料·成员作品 最新动态
立即查看
领券
问题归档
专栏文章
快讯文章归档
关键词归档
开发者手册归档
开发者手册 Section 归档