Sun公司在2006年底,就将三大平台正名为java SE、java EE和java ME。也有很多人习惯用J2SE、J2EE和J2ME。

1、java SE

  java SE(标准版)是各应用平台的基础,想学习其他的平台应用,必须先了解java SE以奠定基础。

java SE可以分为4个主要部分:JVM、JRE、JDK与JAVA语言。

想要运行java撰写好的程序,就必须有java虚拟机(Java Virtual Machine,JVM)。

JVM包含在java执行环境(java SE Runtime Environment,JRE)中,所以想要运行Java程序,就必须要安装JRE。

若是想要开发java程序,就必须安装JDK(java SE Development Kits),JDK包含JRE及开发过程中所需要的工具包。

如javac、java、appletviewer等工具。

  java语言只是java SE的一部分,除了语言之外,java最重要的就是提高庞大且强大的标准API,提供字符串处理、

数据输入/输出、网络套件、用户窗口接口等功能。可以使用这些API作为基础来进行程序开发,无需重复开发相同的功能组件。

2、java EE

  java EE(企业版)以java SE为基础,定义了一系列的服务、API、协议等,适用于开发分布式、多层次(Multi-tiered)、

以组件为基础、以WEB为基础的应用程序,整个java EE体系很庞大,比较熟悉的技术是JSP、Servlet、JavaMail、

Enterprise JavaBeans(EJB)等。必须要学好java SE基础,再学习java EE的开发。

3、java ME

  java ME是java平台版本中最小的一个,目的是作为小型数字设备上开发及部署应用程序的平台,像是消费性电子产品

或嵌入式系统等。最常见的设备如手机、PDA、股票机等,可以使用java ME来开发这些移动设备上的程序,如java游戏、

记事程序、日历程序等。

PS:JCP与JSR

  java不仅是程序语言,还是标准规范。

  编译/执行Java的JDK/JRE,并不只有Sun才能实现,IBM也可以撰写自己的JDK/JRE,其他厂商或组织也可以撰写自己

的JDK/JRE。

  Java有Sun创造,为了让对java感兴趣的厂商或组织、开发者与用户参与定义Java未来的功能和特性,Sun公司于1998年

组成了JCP(Java Community Process),这是一个开放性国际组织,目的是让Java的演进由Sun非正式的主导,成为全世界

数以百计代表成员公开监督的过程。

  任何想要提示加入java 的功能或特性,必须以JSR(Java Specification Requests)正式文件的方式提交,JSR必须经过

JCP执行委员会(Executive Committee)投票通过,才可以成为最终的标准文件,有兴趣的厂商或组织可以根据JSR来实现产品。

  若JSR成为最终文件后,必须根据JSR成果作出免费且开发原始码的参考实现,成为RI(Reference Implemetation),并提供

TCK(Technology Compatibility Kit)作为技术兼容测试工具箱,方便于其他厂商或组件想根据JSR实现产品参考与测试兼容性。

  在JSR规范的标准下,各厂商可以各自操作成品,所以同一份JSR文件,可以有不同厂商的操作产品。以java SE为例,对于身为

开发人员,或使用java产品的公司而言,只要使用兼容于标准的JDK/JRE开发产品,就可以执行、兼容于标准的JRE上,而不用担心

跨平台的问题。

《java jdk7学习笔记》之java三大平台的更多相关文章

  1. 《Java JDK7 学习笔记》课后练习题1

    1.()组织负责监督审查Java相关技术规格的演进. A. JCP B. Apache C. EU D. W3C 2.Java技术规格必须以()正式文件提交审查. A. RFC B. JSR C. I ...

  2. 《java JDK7学习笔记》之跨平台与路径设置

    Platforms表示Solaris.Linux.Windows各种操作系统平台,在这些平台上架构了java Virtaul Machine,简称JVM,Java虚拟机. Java虚拟机可以让java ...

  3. 《java JDK7 学习笔记》之继承与多态

    1.面向对象中,子类继承父类,避免重复的行为定义,不过并非为了避免重复定义行为就使用继承.应该正确判断使用继承的时机及继承之后灵活的运用多态,才是学习继承时的重点. 2.程序代码重复在程序设计上,就是 ...

  4. 《Java JDK7 学习笔记》课后练习题2

    1.如果在hello.java中撰写以下的程序代码: public class Hello {     public static dmain(String[]args) {          Sys ...

  5. Java基础学习笔记一 Java介绍

    java语言概述 Java是sun公司开发的一门编程语言,目前被Oracle公司收购,编程语言就是用来编写软件的. Java的应用 开发QQ.迅雷程序(桌面应用软件) 淘宝.京东(互联网应用软件) 安 ...

  6. Java基础学习笔记十 Java基础语法之final、static、匿名对象、内部类

    final关键字 继承的出现提高了代码的复用性,并方便开发.但随之也有问题,有些类在描述完之后,不想被继承,或者有些类中的部分方法功能是固定的,不想让子类重写.可是当子类继承了这些特殊类之后,就可以对 ...

  7. 《java JDK7 学习笔记》之异常处理

    1.java中所有的错误都会被打包为对象,JVM会尝试执行try区块中的程序代码,如果发生错误,执行流程会跳离错误发生点,然后比较catch括号中声明的异常类型,是否符合被抛出的错误对象类型,如果是的 ...

  8. 《java JDK7 学习笔记》之Collection

    一.使用Collection 收集对象 1.认识Collection架构 Java SE提供了满足各种需求的API,在使用这些API前,建议先了解其继承与接口操作架构,才能了解何时使用哪个类,以及类之 ...

  9. 《java JDK7 学习笔记》之接口与多态

    1.对于"定义行为"也就是接口,可以使用interface关键字定义,接口中的方法不能操作,直接标示为abstract,而且一定是public修饰的. 类要操作接口,必须使用imp ...

随机推荐

  1. Java---Java的面试题(一)

    1.什么是Java虚拟机?为什么Java被称作是"平台无关的编程语言"? Java虚拟机是一个可以执行Java字节码的虚拟机进程.Java源文件被编译成能被Java虚拟机执行的字节 ...

  2. oracle 数据类型详解---日期型(转载)

    oracle 数据类型详解---日期型 oracle数据类型看起来非常简单,但用起来会发现有许多知识点,本文是我对ORACLE日期数据类型的一些整理,都是开发入门资料,与大家分享: 注:由于INTER ...

  3. Swagger接入

    一 简介 Swagger是一个开源项目,用于描述和生成RestAPi的文档.可以帮助开发人员快速了解web服务的功能. 二  接入Swagger流程 1.在所在Module的pom.xml中,添加Sw ...

  4. ubuntu 下安装redis 以及php扩展

      下载redis wget http://download.redis.io/redis-stable.tar.gz   tar xzf redis-stable.tar.gz cd redis-s ...

  5. 完整的定时任务解决方案Spring集成+定时任务本身管理+DB持久化+集群

    完整的定时任务解决方案Spring集成+定时任务本身管理+DB持久化+集群 maven依赖 <dependency> <groupId>org.quartz-scheduler ...

  6. 一款经典的jQuery slidizle 幻灯片

    jQuery广告幻灯片进度条,水平/左右切换,垂直/上下切换,自动播放,缩略图列表切换 在线实例 默认效果 水平/左右切换 垂直/上下切换 循环 自动播放 缩略图 进度条 回调函数 使用方法 < ...

  7. JavaScript中对象的比较

    Javascript中有'=='和'==='两种相等比较,后者是全等,会判断数据类型,前者是相等,在比较时,会发生隐式转换. 如果将两个对象做'=='比较,结果会如何呢? 比如有如下两个对象: var ...

  8. mac 终端(terminal) 启动tomcat

    mac 终端启动tomcat: 找到你的tomcat安装的根目录:找到bin目录,在终端 cd 到这个bin中,输入sudo ./startup.sh (然后终端会提示你输入本机密码如果是在需要权限的 ...

  9. Swift-Switch穿透

    switch vegetable {        case "celery":            print("Add some raisins and make ...

  10. XCode6无论如何都无法升级为XCode8为什么呀?

    因为开发微信支付需要IOS9.0版本,但是本来的XCode是6.0版本,所以最高的是8.3版本,所以要进行升级更新,但是打开更新中心发现没有更新提示,所以到AppStore里面进行下载,因为本机已经安 ...