java和javaEE的区别主要是:1、定义不同;2、用处不同。java是编程语言,创建的目的为了消除c++指针的复杂性,使用jvm虚拟机来自动管理内存。javaEE是当年sun公司搞的ejb规范,主要用于企业级开发,有容器管理的java程序,类似现在的web服务,微服务程序。
1、定义不同
java是编程语言,当年创建的目的为了消除c++指针的复杂性,使用jvm虚拟机来自动管理内存,可以运行在jvm上,jvm官方的有oracle的jvm,另外有GraalVM(新的编译虚拟技术,可运行js、Python,响应时间短),OpenJDK(开源,代码可以改),Zing(收费,使用的内存最少,每个java可分配8TB的堆内存),阿里Dragonwell(OpenJDK改,只支持linux,LTS)等多种。
javaEE是当年sun公司搞的ejb规范,主要用于企业级开发,当时主要功能就是带状态,有容器管理的java程序,类似现在的web服务,微服务程序。由于ejb非常复杂,有很多状态和规定,后来很多企业用轻量级容器spring来代替ejb,但名称还是延用以前的javaEE名称,主要特点有个容器(可能是spring这种),可以方便管理java对象及相互调用,如spring的ioc控制反转,aop面向切面编程,实际就是javaee的概念发展。重量级容器支持ejb,如jboss,而tomcat不支持ejb称为轻量级容器。
2、用处不同
其中Java SE就是大家所熟知的Java根底,Java EE在企业最常用的地方就是网站PC端的开发,而Java ME常用于移动端开发,现在熟悉的安卓系统便是用Java ME开发的。
Java既可以被编译,也可以被解说。经过编译器,可以把Java程序翻译成一种中间代码 -称为字节码-可以被Java解说器解说的独立于渠道的代码。经过解说器,每条Java字节指令被剖析,然后在核算机上运行。只需编译一次,程序运行时解说履行。
Java不同于一般的编译履行核算机言语和解说履行核算机言语。它首先将源代码编译成二进制字节码(bytecode),然后依靠各种不同渠道上的虚拟机来解说履行字节码,然后完成了“一次编译、到处履行”的跨渠道特性。
延伸阅读:
什么是javaEE
Java EE 是 J2EE的一个新的名称,之所以改名,目的还是让大家清楚J2EE只是Java企业应用。在2004年底中国软件技术大会Ioc微容器(也就是Jdon框架的实现原理)演讲中指出:我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
Java EE是 J2EE的一个新的名称,之所以改名,目的还是让大家清楚J2EE只是Java企业应用.随着WEB和EJB容器概念诞生,使得软件应用业开始担心SUN的伙伴们是否还在Java平台上不断推出翻新的标准框架,致使软件应用业的业务核心组件架构无所适从,从一直以来是否需要EJB的讨论声中说明了这种彷徨。
在2004年底中国软件技术大会Ioc微容器(也就是Jdon框架的实现原理)演讲中指出:我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本.此次J2EE改名为Java EE,实际也反映出业界这种共同心声。
Java EE的核心是EJB3.0, 其提供了更兼便捷的企业级的应用框架。
文章标题:java和javaEE有什么区别,发布者:小编,转载请注明出处:https://worktile.com/kb/p/36149