【Java 理论篇 1】Java2平台的三个版本介绍
导读:关于java的三种分类J2SE、J2EE、J2ME,在网上有很多资料,然后自己写的,也大多是从各个网站上搜罗里的。算是自己的一种笔记,或者明白的说,就是把别人的东西抄一遍。但是,这对于我来说,也是很重要的一步。
一、java的版本历史
从一种语言发展为一种平台:Java的前身是一种与平台无关的语言“OaK”,诞生于1991年Sun公司的一个研究项目,最初目的是为了应用于消费类电子设备的开发。
1994年Internet开始起步,1995年NetScape宣布把Java集成到其浏览器中,可执行的Java代码可以以Applet的形式在浏览器中运行,Java开始流行。
Sun公司1996年1月发布JDK1.0,1997年2月发布JDK1.1,Java开始在企业中应用。1998年12月发布JDK1.2,即Java 2 平台,并于1999年6月经集成重组后重新发布。
2004Tiger (Java 5.0) released!
二、版本介绍
2.1,J2SE
2.1.1,基本概念
J2SE(Standard Edition,标准版):包含构成Java语言核心的类。比如:数据库连接、接口定义、输入/输出、网络编程。
2.2.2,应用范围
J2SE是java2的标准版,主要用于桌面应用软件的编程。
2.2,J2EE
2.2.1,基本概念
J2EE(Enterprise Edition,企业版):包含J2SE 中的类,并且还包含用于开发企业级应用的类。比如:EJB、servlet、JSP、XML、事务控制。
2.2.2,应用范围
J2EE是java2的企业版,主要用于分布式的网络程序开发,比如电子商务网站和ERP(Enterprise Resource Planning)系统。
2.3,J2ME
2.3.1,基本概念
J2ME(Micro Edition,微缩版)):包含J2SE中一部分类,用于消费类电子产品的软件开发。比如:呼机、智能卡、手机、PDA、机顶盒。
2.3.2,应用范围
J2ME是java2的微缩版,主要用于嵌入式的系统开发,比如:手机和PDA(Personal Digital Assistant)编程。
三、总结
首先,是对这三者的范围的一个总结:J2ME < J2SE < J2EE
其次,接下来要学习的是J2EE,所以总结一下,J2EE到底是个什么东西:J2EE,是sun公司提出的一个标准(本身也有其实现),符合这个标准的产品叫“实现”;其中下载的sun公司的J2EE开发包中就有一个这样的“实现”,而jboss,weblogic,websphere都是J2EE标准的一个“实现”。由于jboss,weblogic,websphere自身带有J2EE的api,所以可以不使用sun的J2EE实现。
然后,在使用java2平台的东西的时候,通常需要安装JDK,这个JDK是什么呢?JDK(Javadevelopmenttoolkit):相当于是Java的库函数,是编译,运行java程序的工具包。
【Java 理论篇 1】Java2平台的三个版本介绍的更多相关文章
- 【java 理论篇 2】J2EE的13种规范
导读:看完了J2EE的视频,没有什么技术实践,现在就从理论上说明一下J2EE的13种规范,以及现在的自己对它的一个理解.可能会有偏差,但是,算是做为目前的一个记录. 一.13种规范 1.1.JDBC( ...
- 使用Java语言开发微信公众平台(三)——被关注回复与关键词回复
在上一篇文章中,我们实现了文本消息的接收与响应.可以在用户发送任何内容的时候,回复一段固定的文字.本章节中,我们将对上一章节的代码进行适当的完善,同时实现[被关注回复与关键词回复]功能. 一.微信可提 ...
- java提高篇(八)----详解内部类
可以将一个类的定义放在另一个类的定义内部,这就是内部类. 内部类是一个非常有用的特性但又比较难理解使用的特性(鄙人到现在都没有怎么使用过内部类,对内部类也只是略知一二). 第一次见面 内部类我们从外面 ...
- java提高篇(七)-----详解内部类
可以将一个类的定义放在另一个类的定义内部,这就是内部类. 内部类是一个非常有用的特性但又比较难理解使用的特性(鄙人到现在都没有怎么使用过内部类,对内部类也只是略知一二). 第一次见面 内部类我们从外面 ...
- java提高篇之详解内部类
可以将一个类的定义放在另一个类的定义内部,这就是内部类. 内部类是一个非常有用的特性但又比较难理解使用的特性(鄙人到现在都没有怎么使用过内部类,对内部类也只是略知一二). 第一次见面 内部类我们从外面 ...
- Java多线程编程实战指南(核心篇)读书笔记(三)
(尊重劳动成果,转载请注明出处:http://blog.csdn.net/qq_25827845/article/details/76686044冷血之心的博客) 博主准备恶补一番Java高并发编程相 ...
- Java Web基础 --- Servlet 综述(理论篇)
摘要: Web 技术成为当今主流的互联网 Web 应用技术之一,而 Servlet 是 Java Web 技术的核心基础.本文首先从请求/响应架构应用的大背景谈起 Servlet 的由来,明确 Ser ...
- java提高篇(三十)-----Iterator
迭代对于我们搞Java的来说绝对不陌生.我们常常使用JDK提供的迭代接口进行Java集合的迭代. Iterator iterator = list.iterator(); while(iterator ...
- Java总结篇系列:Java多线程(三)
本文主要接着前面多线程的两篇文章总结Java多线程中的线程安全问题. 一.一个典型的Java线程安全例子 public class ThreadTest { public static void ma ...
随机推荐
- java容器章节总结
- Hash环/一致性Hash原理
当前,Memcached.Redis这类分布式kv缓存已经非常普遍.从本篇开始,本系列将分析分布式缓存相关的原理.使用策略和最佳实践. 我们知道Memcached的分布式其实是一种“伪分布式”,也就是 ...
- RHEL 6.5----heartbeat
主机名 IP 所需软件 master 192.168.30.130 heartbeat.httpd node-1 192.168.30.131 nfs node-2 192.168.30.1 ...
- Jquary基础
基本知识: 就是一个JS函数包 选择器:基本选择器: 基本:ID选择器 “#” , Class选择器 “.”,标签选择器 “标签名” 组合:并列用“,”隔开 后代用空格隔开 过滤选择器:基本过滤: ...
- 使用ant build build.xml报“includeantruntime was not set”警告及"Class not found: javac1.8"问题
问题1:ant编译build.xml报“includeantruntime was not set”警告. 警告详情: warning: 'includeantruntime' was not set ...
- 【转】java序列化一定要应该注意的6个事项!
1.如果子类实现Serializable接口而父类未实现时,父类不会被序列化,但此时父类必须有个无参构造方法,否则会抛InvalidClassException异常. 2.静态变量不会被序列化,那是类 ...
- bt5r3安装postgresql
apt-get install postgresql
- 秒杀Sublime Text的微软开源代码编辑工具Visual Studio Code
1. 下载链接: https://code.visualstudio.com/ 2. 秒开一个ASP.NET网站源码 3.编辑CSS颜色支持 4.Git支持 5.常用快捷键 Ctrl+Shift+P ...
- [Github筆記] 清除所有 Commit 紀錄
# 把原來的 git 移除掉 sudo rm .git -r # 初始化 git init git remote add origin https://github.com/username/repo ...
- 在Oracle用SQL处理以 System.currentTimeMillis
有時為了系統的需求會紀錄到毫秒(Millisecond),我們會接將得到的值寫入db,但是如果要用SQL 做時間範圍的搜尋,有以下做法( systemdate欄位存放System.currentTim ...