【编程解惑】Java、JavaEE、JavaSE、Java Web、JavaScript有什么区别?

很多有想入门Java的小伙伴在听到Java那么多叫法的时候,是不是表示一脸懵逼,今天老九君就给大家捋一捋Java大家族间的分门别类。

Java分为:JavaSE、JavaEE、JavaME

Java SE是Java平台标准版的简称(Java platform, standard edition),Java SE 以前称为 J2SE。适用于标准的应用开发,用于开发和部署桌面、服务器以及嵌入设备和实时环境中的Java应用程序。Java SE包括用于开发Java web服务的类库,同时,Java SE为Java EE提供了基础

Java EE是Java平台企业版的简称(Java platform, enterprise edition),以前称为 J2EE。适用于企业级的应用服务开发,用于简化企业解决方案的开发、部署和管理相关的复杂问题的体系结构。Java EE建立于Java SE之上,具有web服务、组件模型、以及通信API等特性,可以用来实现企业级的面向服务体系结构(SOA)和 Web 2.0 应用程序。

Java ME是Java微版的简称(Java platform, enterprise edition),以前称为 J2ME,常用于常用于手机上的开发。是一个技术和规范的集合,Java ME为在移动设备和嵌入式设备(比如手机、PDA、电视机顶盒和打印机)上运行的应用程序提供一个健壮且灵活的环境。Java ME 包括灵活的用户界面、健壮的安全模型、许多内置的网络协议以及对可以动态下载的连网和离线应用程序的丰富支持。基于 Java ME 规范的应用程序只需编写一次,就可以用于许多设备,而且可以利用每个设备的本机功能。

Java 和Java Web的关系?

  JavaWeb属于JavaEE的领域,用于开发应用程序和网站系统。初级的一般是使用JSP(Java Server Pages)+servlet+Javabean来开发,对大型的网站一般是使用框架来开发的,例如struts,hibernate,spring。在有了Java基础和div+css布局这些基础后,学习Java Web以及后面一系列的ssh框架学习就可成为Java Web工程师。

Java 和 JavaScript 是两门不同的编程语言

一般认为,当时 Netscape 之所以将 LiveScript 命名为 JavaScript,是因为 Java 是当时最流行的编程语言,带有 "Java" 的名字有助于这门新生语言的传播。

它们的相同之处包括:

  • 它们的语法和 C 语言都很相似;
  • 它们都是面向对象的(虽然实现的方式略有不同);
  • JavaScript 在设计时参照了 Java 的命名规则;

它们的不同之处包括:

  • JavaScript 是动态类型语言,而 Java 是静态类型语言;
  • JavaScript 是弱类型的,Java 属于强类型;
  • JavaScript 的面向对象是基于原型的(prototype-based)实现的,Java 是基于类(class-based)的;

  JavaScript 除了长得和 Java 比较像之外,语言风格相去甚远。JavaScript 在设计时所参考的对象不包括 Java,而包括了像 Self 和 Scheme 这样的语言。

入门Java先学什么?

  JavaSE是入门Java的基础知识,其余两种是高级Java知识,必须先学习JavaSE才可以学习JavaSE和JavaME中的一种或两种。

原文发布于微信公众号 - 老九学堂(xuetang9)

原文发表时间:2016-10-26

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏王亚昌的专栏

Go语言入门之路

Go is designed from first principles to advance the practice of software enginee...

3375
来自专栏陈本布衣

Spring基础篇——DI/IOC和AOP原理初识

前言   作为从事java开发的码农,Spring的重要性不言而喻,你可能每天都在和Spring框架打交道。Spring恰如其名的,给java应用程序的开发带了...

2327
来自专栏何俊林

性能比肩美拍秒拍的Android视频录制编辑特效解决方案

众所周知,Android平台开发分为Java层和C++层,即Android SDK和Android NDK。常规产品功能只需要涉及到Java层即可,除非特殊需要...

1291
来自专栏编程

C语言怎么学习?以C语言模拟登录为例,学C语言该当如此方可成

好了不用看了,看直了也不会有妹子,看题了: C语言编写代码实现,模拟用户登录------看着是不是很简单?,是不是很轻松?,是不是就有这样的代码? (小编随便百...

3109
来自专栏极客生活

真正好用的python库

这个库是我安装完python环境后第一个安装的库,装上这个库再开始写代码才有底气,作者 Kenneth Reitz 是公认python领域代码写的最好的两个人之...

983
来自专栏FreeBuf

逆向工厂(一):从hello world开始

* 本文原创作者:追影人,本文属FreeBuf原创奖励计划,未经许可禁止转载 前言 从本篇起,逆向工厂带大家从程序起源讲起,领略计算机程序逆向技术,了解程序的运...

3348
来自专栏Android 开发者

开发者也是用户 - 第二部分:改善 UI 和 API 可用性的五条指导原则

1723
来自专栏漫漫全栈路

【译】助你成功搭建云应用的12条方法

原文作者:Rafael Benevides 原文地址:https://dzone.com/articles/12-factors-to-cloud-succes...

2999
来自专栏Android 技术栈

Macbook Pro键帽拆解安装图文教程

前段时间把可乐洒在电脑上了,大概有1/5的罐装可乐,紧急之下把电脑翻转过来,万幸的是电脑没出问题。就是过了两天之后,键盘黏黏的,特别是空格键。 送修的话,这属...

2.7K1
来自专栏玉树芝兰

如何在Jupyter Notebook中使用Python虚拟环境?

如何在使用Jupyter Notebook时,解决Python虚拟环境间的切换问题?本文一步步帮你拆解。希望你能够避免踩坑的痛苦,把更多的时间花在愉快的编程上。

2133

扫码关注云+社区