转载地址:http://blog.csdn.net/alspwx/article/details/20799017

一、J2EE、J2SE、J2ME区别

J2EE——全称Java 2 Enterprise Edition,是Java的一种企业版,用于企业级应用开发。

J2SE——全称Java 2 Standard Edition,是Java的标准版,用于标准应用开发,也是Java基础版本。

J2ME——全称Java 2 Micro Edition,是Java的微型版,用于手机、PDA等嵌入式开发,针对手机开发,还有专门的J2ME Wireless Toolkit免费套件提供。

总而言之,J2EE,J2SE,J2ME是java针对不同使用范畴提供不同的服务,也就是提供不同类型的类库。针对企业应用的J2EE(Java 2 Enterprise Edition)、针对普通PC应用的J2SE(Java 2 Standard Edition)和针对嵌入式设备及消费类电器的J2ME(Java 2 Micro Edition)三个版本。

此外,还有个Java Card版本,顾名思义,Java Card主要面向智能卡应用开发。

对初学者而言,大都是从J2SE先入手,DOWN个J2SE就可以了,在ORACLE官网,就是Java SE,刚刚去ORACLE官网逛了一下,现在又多了几个名词了,JAVA FX、JAVA DB、JAVA CARD、JAVA Embedded,而且JAVA SE还分JAVA SE Advanced和JAVA SE Suite,.....饶口令一样,还好不是专业做JAVA 开发*_*。

下面的内容,从是其他网站上复制下来的,感觉不错。

Java 拥有3个版本,分别为:J2EE、J2SE和J2ME(也就是说,J2EE、J2SE和J2ME是Java的不同版本)。以下是详细介绍:

  • J2EE(Java 2 Platform Enterprise Edition)企业版
    是为开发企业环境下的应用程序提供的一套解决方案。该技术体系中包含的技术如Servlet Jsp等,主要针对于Web应用程序开发。
  • J2SE(Java 2 Platform Standard Edition)标准版
    是为开发普通桌面和商务应用程序提供的解决方案。该技术体系是其他两者的基础,可以完成一些桌面应用程序的开发。比如Java版的扫雷。
    平时所说的JDK其实就是指J2SE,这也是本教程所要讲解的。
  • J2ME(Java 2 Platform Micro Edition)小型版
    是为开发电子消费产品和嵌入式设备提供的解决方案。该技术体系主要应用于小型电子消费类产品,如手机中的应用程序等。
    注意:这里的小型电子消费品不是指搭载了IOS或Android操作系统的手机,IOS和Android系统都有自己的开发组件。

两点注意:

  • Java5.0版本后,J2EE、J2SE、J2ME分别更名为JAVAEE JAVASE JAVAME。
  • 每个版本名称中都带有一个数字“2”,这个“2”是指Java2:自从 Java1.2 发布后,Java 改名为 Java2(不过我们平时仍然称为 Java)。

二、SDK、JDK、JRE、JVM区别

下面再看一下几个三字母的名词概念:

JDK全称Java development toolkit,相当于是Java的库函数,是编译、运行java程序的工具包。

SDK——全称Software Develop Kit,软件开发工具包,用于帮助开发人员提高开发效率。各种不同类型的软件开发,都可以有自己的SDK。Windows有Windows SDK,DirectX 有 DirectX 9 SDK,.NET开发也有Microsoft .NET Framework SDK。JAVA开发当然也有自己的Java SDK。

JDK——全称Java development toolkit,相当于是Java的库函数,是编译、运行java程序的工具包,是一切java应用程序的基础,所有java应用程序是构建在这个之上的。它是一组API,也可以说是一些java Class。JDK作为Java开发工具包,主要用于构建在Java平台上运行的应用程序、Applet 和组件等,目前ORACLE官网介绍看,JDK属于SDK的一部分,JDK和SDK一起发行的。

JRE——全称Java Runtime Environment,Java运行环境,也就是Java平台。所有的Java程序都要在JRE下才能运行。JDK的工具也是Java程序,也需要JRE才能运行。为了保持JDK的独立性和完整性,在JDK的安装过程中,JRE也是安装的一部分。所以,目前ORACLE官网介绍看,JRE则属于JDK的一部分,如果不想开发,只是想跑跑JAVA程序,官网可以下载到单独的JRE包,但如果要开发,还是需安装上面的JDK。

JVM——全称Java Virtual Machine,Java虚拟机,是JRE的一部分。它是一个虚构出来的计算机,是通过在实际的计算机上仿真模拟各种计算机功能来实现的。JVM有自己完 善的硬件架构,如处理器、堆栈、寄存器等,还具有相应的指令系统。Java语言最重要的特点就是跨平台运行。使用JVM就是为了支持与操作系统无关,实现跨平台。

所以,JAVA虚拟机JVM是属于JRE的,而现在我们安装JDK时也附带安装了JRE(当然也可以单独安装JRE)。

备注:本文主要内容来源于相关链接文章整理,加上天缘个人理解上的修正或补充。也可参考链接文章,但下文链接中有关于J2SE、J2EE等区别问题,天缘个人感觉跟ORACLE官网说法似乎有出入,本文不再涉及,详细概念建议去官网查询。

三、JAVA基础知识总结

    1. 开发Java语言的公司?
      美国Sun (Sun Microsystems)公司开发。
    2. Java的3个版本?
      J2SE(Java2 Standard Edition) 标准版
      J2EE(Java 2 Platform,Enterprise Edition) 企业版
      J2ME(Java 2 Micro Edition) 微小版
      在5.0以后新版本中称作:JavaSE JavaEE JavaME
    3. Java语言的几个主要特点?
      平台无关性:能运行于不同的平台上
      安全性:去掉了指针操作,内存由操作系统分配
      面向对象:利用类使程序更加利于维护
      分布式:可以使用网络文件和使用本机文件一样容易
      健壮性:检查程序编译和运行的错误
    4. Java的三大核心机制
      虚拟机机制:利用虚拟机解释字节码执行java程序实现跨平台
      垃圾收集机制:自动内存回收
      代码安全性机制:加载代码后校验代码后再执行代码。
    5. JDK是什么?
      JDK(Java Development Kit)Java开发工具包。包括了JRE,是开发Java的人员必备的开发运行Java程序的工具。
    6. JRE是什么?
      JRE(Java Runtime Environment)Java运行环境,运行JAVA程序所必须的环境的集合,包含JVM标准实现及Java核心类库。
    7. JVM是什么?
      JVM (Java Virtual Machine) Java虚拟机,它是一个虚构出来的计算机,是通过在实际的计算机上仿真模拟各种计算机功能来实现的。
    8. 安装JDK的操作系统问题?
      必须针对于不同的操作系统下载安装不同的JDK,例如windows下安装针对于windows的JDK,linux下安装针对于linux的JDK。
    9. 需要配置的相关环境变量?
      path:用于搜索外部命令,例如编译程序的javac命令,执行程序的java命令
      classpath:用于搜索类,即class文件,例如可以在不同的位置执行类文件
    10. 可以编写Java程序的常见开发工具?
      记事本,Eclipse,MyEclipse,Jcreate
    11. Java文件的类型?
      有两种:
      扩展名为java的文件:是Java源文件,属于编译之前的纯文本文件,存储java源代码。
      扩展名为class的文件:是Java类文件,属于编译之后的二进制文件,存储字节码。
    12. Java的编译运行原理?
      首先编写java源文件,然后编译成class类文件,然后通过虚拟机解释成机器码到硬件执行。
    13. Java是编译型语言还是解释型的语言?
      既不是完全编译型,也不是完全解释型,是半编译半解释的

J2EE,J2SE,J2ME,JDK,SDK,JRE,JVM区别(转载)的更多相关文章

  1. J2EE,J2SE,J2ME,JDK,SDK,JRE,JVM区别

    转自:http://www.metsky.com/archives/547.html 一.J2EE.J2SE.J2ME区别 J2EE——全称Java 2 Enterprise Edition,是Jav ...

  2. java入门时的一些基本概念的理解(j2ee,j2se,j2me,jdk,sdk,jre,jvm,跨平台)

    首先声明,这篇文章是从网上粘贴过来的.原文地址是:http://www.cnblogs.com/wangaohui/archive/2012/11/28/2791999.html.感觉写的很好,所以粘 ...

  3. Java2_java入门时的一些基本概念的理解(j2ee,j2se,j2me,jdk,sdk,jre,jvm,跨平台)

    什么是SDK呢? Software Develop Kit的简称,顾名思义就是软件开发包.软件开发商实现底层模块,并对其进行类库封装,配置成高级别的开发环境,为程序员上层的程序开发提供支持.譬如Goo ...

  4. jdk,j2ee,j2se,j2me的概念区别

    jdk,j2ee,j2se,j2me的概念区别1.JDK是Java development toolkit,相当于是Java的库函数,是编译,运行java程序的工具包.J2EE是Java 2 ente ...

  5. 转载 j2ee j2se j2me 区别,mvc 和ssh联系理解

    [转]J2SE J2EE J2ME的区别 以及 MVC与SSH对应关系 2014-3-6阅读322 评论0 J2SE J2EE J2ME的区别多数编程语言都有预选编译好的类库以支持各种特定的功能,在J ...

  6. jdk与jre的区别

    很多程序员已经干了一段时间java了依然不明白jdk与jre的区别.JDK就是Java Development Kit.简单的说JDK是面向开发人员使用的SDK,它提供了Java的开发环境和运行环境. ...

  7. 第一节 JDK是什么?JRE是什么?JDK和JRE的区别?以及jdk安装和测试。

    Java是一门面向对象编程语言,不仅吸收了C++语言的各种优点,还摒弃了C++里难以理解的多继承.指针等概念,因此Java语言具有功能强大和简单易用两个特征.Java语言作为静态面向对象编程语言的代表 ...

  8. [Java] jdk与jre的区别

    很多程序员已经干了一段时间java了依然不明白jdk与jre的区别.JDK就是Java Development Kit.简单的说JDK是面向开发人员使用的SDK,它提供了Java的开发环境和运行环境. ...

  9. jdk与jre的区别(转)

    很多程序员已经干了一段时间java了依然不明白jdk与jre的区别.JDK就是Java Development Kit.简单的说JDK是面向开发人员使用的SDK,它提供了Java的开发环境和运行环境. ...

随机推荐

  1. java 加载并读取Properties 文件

    1 .系统自带的application.properties  (以下代码仅供参考,不能粘贴复制) 假设application.properties文件有下面两个值: come.test.name = ...

  2. ruby 生成随机字符串

    rand(36 ** n).to_s(36) n 等于任意数字

  3. ubuntu18 安装apache2.4 php5.6 mysql5.6

    源码包下载: 链接:https://pan.baidu.com/s/1uoVMy_QNyR_zqVi06QPqKg 提取码:ll7s 注意:    ubuntu安装:sudo apt-get inst ...

  4. C语言——第一章,1.4程序开发过程

    1.4程序开发过程 一,开发过程 1,分析问题,设计一种解决问题的途径(方案)★ 2,写出源代码 (*.c) 3,编译→(连接)   *.obj→(*.exe) 4,运行*.exe (可执行程序) 二 ...

  5. maven拓展——使用tomcat插件运行maven项目

    首先,在pom.xml中配置插件: <build> <plugins> <plugin> <groupId>org.apache.tomcat.mave ...

  6. 20155235 《Java程序设计》 实验二 实验三 敏捷开发与XP实践

    20155235 <Java程序设计> 实验二 实验三 敏捷开发与XP实践 实验内容 XP基础 XP核心实践 相关工具 实验内容 没有Linux基础的同学建议先学习<Linux基础入 ...

  7. 考研编程练习----Kruskal

    #include <stdio.h> #include <stdlib.h>   #define MAX 100   /* 定义边(x,y),权为w */ typedef st ...

  8. 为什么说private方法是有罪的

    具体的这句话从什么地方获得,我已经无从考证了,但是想想我们现在使用private的场景,你慢慢的就会发现,private的方法,大多数都是copy代码,当然我只是说大多数,还有就是大多数private ...

  9. SublimeText 改变 tab的距离

    view -> Indentation -> Tab width ……

  10. 成都Uber优步司机奖励政策(4月18日)

    滴快车单单2.5倍,注册地址:http://www.udache.com/ 如何注册Uber司机(全国版最新最详细注册流程)/月入2万/不用抢单:http://www.cnblogs.com/mfry ...