《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 ...
随机推荐
- spring笔记4 spring MVC的基础知识4
//todo 5,spring MVC的本地化解析,文件上传,静态资源处理,拦截器,异常处理等 spring MVC 默认使用AcceptHeaderLocalResolver,根据报文头的Accep ...
- 【Java每日一题】20161111
package Nov2016; import java.io.Serializable; public class Ques1111 implements Serializable{ private ...
- Scalaz(18)- Monad: ReaderWriterState-可以是一种简单的编程语言
说道FP,我们马上会联想到Monad.我们说过Monad的代表函数flatMap可以把两个运算F[A],F[B]连续起来,这样就可以从程序的意义上形成一种串型的流程(workflow).更直白的讲法是 ...
- HDU 1237 简单计算器 栈
额,题目是中文的,题意就不用说了= =都看懂喽.写个字符串先把这行计算式存进去,不过不能存一个算一个,因为考虑到乘除法比加减法优先的原则,如果是加号减号就先存着等待计算,如果是乘号除号就直接算出来值就 ...
- opencart二次开发小记
在controller中如果要调用model中数据或说方法可以这样写 $this->load->model('catalog/information');//model中的informat ...
- Android总结篇系列:Android广播机制
1.Android广播机制概述 Android广播分为两个方面:广播发送者和广播接收者,通常情况下,BroadcastReceiver指的就是广播接收者(广播接收器).广播作为Android组件间的通 ...
- 设置文件为源文件(和src一样)
点击project->properties->java build path->source
- (转)B-树、B+树、B*树
B-树 是一种多路搜索树(并不是二叉的): 1.定义任意非叶子结点最多只有M个儿子:且M>2: 2.根结点的儿子数为[2, M]: 3.除根结点以外的非叶子结点的儿子数为[M/2, M]: 4. ...
- 基于NXBRE规则引擎实现的柔性折扣策略
规则引擎由推理引擎发展而来,是一种嵌入在应用程序中的组件,实现了将业务决策从应用程序代码中分离出来,并使用预定义的语义模块编写业务决策.接受数据输入,解释业务规则,并根据业务规则做出业务决策.应用背景 ...
- 基于 jQuery 实现垂直滑动的手风琴效果
今天我们要与大家分享一个漂亮而灵活的垂直 jQuery 手风琴效果.其主要思想是扩大手风琴片上的点击和显示更多的信息.其他内容片段将变得不那么透明.当使用一个导航箭头导航下一个片段,新的片会从顶部或底 ...