《java jdk7学习笔记》之java三大平台
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三大平台的更多相关文章
- 《Java JDK7 学习笔记》课后练习题1
1.()组织负责监督审查Java相关技术规格的演进. A. JCP B. Apache C. EU D. W3C 2.Java技术规格必须以()正式文件提交审查. A. RFC B. JSR C. I ...
- 《java JDK7学习笔记》之跨平台与路径设置
Platforms表示Solaris.Linux.Windows各种操作系统平台,在这些平台上架构了java Virtaul Machine,简称JVM,Java虚拟机. Java虚拟机可以让java ...
- 《java JDK7 学习笔记》之继承与多态
1.面向对象中,子类继承父类,避免重复的行为定义,不过并非为了避免重复定义行为就使用继承.应该正确判断使用继承的时机及继承之后灵活的运用多态,才是学习继承时的重点. 2.程序代码重复在程序设计上,就是 ...
- 《Java JDK7 学习笔记》课后练习题2
1.如果在hello.java中撰写以下的程序代码: public class Hello { public static dmain(String[]args) { Sys ...
- Java基础学习笔记一 Java介绍
java语言概述 Java是sun公司开发的一门编程语言,目前被Oracle公司收购,编程语言就是用来编写软件的. Java的应用 开发QQ.迅雷程序(桌面应用软件) 淘宝.京东(互联网应用软件) 安 ...
- Java基础学习笔记十 Java基础语法之final、static、匿名对象、内部类
final关键字 继承的出现提高了代码的复用性,并方便开发.但随之也有问题,有些类在描述完之后,不想被继承,或者有些类中的部分方法功能是固定的,不想让子类重写.可是当子类继承了这些特殊类之后,就可以对 ...
- 《java JDK7 学习笔记》之异常处理
1.java中所有的错误都会被打包为对象,JVM会尝试执行try区块中的程序代码,如果发生错误,执行流程会跳离错误发生点,然后比较catch括号中声明的异常类型,是否符合被抛出的错误对象类型,如果是的 ...
- 《java JDK7 学习笔记》之Collection
一.使用Collection 收集对象 1.认识Collection架构 Java SE提供了满足各种需求的API,在使用这些API前,建议先了解其继承与接口操作架构,才能了解何时使用哪个类,以及类之 ...
- 《java JDK7 学习笔记》之接口与多态
1.对于"定义行为"也就是接口,可以使用interface关键字定义,接口中的方法不能操作,直接标示为abstract,而且一定是public修饰的. 类要操作接口,必须使用imp ...
随机推荐
- Java---Java的面试题(一)
1.什么是Java虚拟机?为什么Java被称作是"平台无关的编程语言"? Java虚拟机是一个可以执行Java字节码的虚拟机进程.Java源文件被编译成能被Java虚拟机执行的字节 ...
- oracle 数据类型详解---日期型(转载)
oracle 数据类型详解---日期型 oracle数据类型看起来非常简单,但用起来会发现有许多知识点,本文是我对ORACLE日期数据类型的一些整理,都是开发入门资料,与大家分享: 注:由于INTER ...
- Swagger接入
一 简介 Swagger是一个开源项目,用于描述和生成RestAPi的文档.可以帮助开发人员快速了解web服务的功能. 二 接入Swagger流程 1.在所在Module的pom.xml中,添加Sw ...
- ubuntu 下安装redis 以及php扩展
下载redis wget http://download.redis.io/redis-stable.tar.gz tar xzf redis-stable.tar.gz cd redis-s ...
- 完整的定时任务解决方案Spring集成+定时任务本身管理+DB持久化+集群
完整的定时任务解决方案Spring集成+定时任务本身管理+DB持久化+集群 maven依赖 <dependency> <groupId>org.quartz-scheduler ...
- 一款经典的jQuery slidizle 幻灯片
jQuery广告幻灯片进度条,水平/左右切换,垂直/上下切换,自动播放,缩略图列表切换 在线实例 默认效果 水平/左右切换 垂直/上下切换 循环 自动播放 缩略图 进度条 回调函数 使用方法 < ...
- JavaScript中对象的比较
Javascript中有'=='和'==='两种相等比较,后者是全等,会判断数据类型,前者是相等,在比较时,会发生隐式转换. 如果将两个对象做'=='比较,结果会如何呢? 比如有如下两个对象: var ...
- mac 终端(terminal) 启动tomcat
mac 终端启动tomcat: 找到你的tomcat安装的根目录:找到bin目录,在终端 cd 到这个bin中,输入sudo ./startup.sh (然后终端会提示你输入本机密码如果是在需要权限的 ...
- Swift-Switch穿透
switch vegetable { case "celery": print("Add some raisins and make ...
- XCode6无论如何都无法升级为XCode8为什么呀?
因为开发微信支付需要IOS9.0版本,但是本来的XCode是6.0版本,所以最高的是8.3版本,所以要进行升级更新,但是打开更新中心发现没有更新提示,所以到AppStore里面进行下载,因为本机已经安 ...