大型网站的技术架构问题,中国站免费推广入口,承德网站建设服务,wordpress字段一、什么是Java#xff1f;
Java是一门面向对象的编程语言#xff0c;不仅吸收了C语言的各种优点#xff0c;还摒弃了C里难以理解的多继承、指针等概念#xff0c;因此Java语言具有功能强大和简单易用两个特征。Java语言作为静态面向对象编程语言的代表#xff0c;极好地…一、什么是Java
Java是一门面向对象的编程语言不仅吸收了C语言的各种优点还摒弃了C里难以理解的多继承、指针等概念因此Java语言具有功能强大和简单易用两个特征。Java语言作为静态面向对象编程语言的代表极好地实现了面向对象理论允许程序员以优雅的思维方式进行复杂的编程 。
Java具有简单性、面向对象、分布式、健壮性、安全性、平台独立与可移植性、多线程、动态性等特点 。Java可以编写桌面应用程序、Web应用程序、分布式系统和嵌入式系统应用程序等。
Java 技术 Java 语言 Java 平台Java 平台 JVM JDK。
作者南京网博教育 链接https://www.zhihu.com/question/31455874/answer/2721177201 来源知乎 著作权归作者所有。商业转载请联系作者获得授权非商业转载请注明出处。
二、什么是Java SE
Java SE JDK 根基。这么说吧可以理解为JavaSE是Java的基石如果将Java程序想象成一座高楼大厦那么JavaSE就是地基。
官方解释
Java SEJava PlatformStandard EditionJava SE 以前称为 J2SE。它允许开发和部署在桌面、服务器、嵌入式环境和实时环境中使用的 Java 应用程序。Java SE 包含了支持 Java Web服务开发的类并为 Java PlatformEnterprise EditionJava EE提供基础。
简单点说Java SE 标准版是其他两个版本的基础是做电脑上运行的软件。
JavaSE包含了什么
面向对象多线程IO流JavaSwing
三、什么是Java EE
JavaEE个人理解的就是在javaSE的基础上添砖加瓦后出现的一种规范说是框架也行。
官方解释
Java EEJava 平台企业版Java Platform Enterprise Edition 之前称为Java 2Platform, Enterprise Edition (J2EE) 2018年3月更名为 Jakarta EE(这个名称应该还没有得到群众认可)。 是 Sun 公司为企业级应用推出的标准平台用来开发B/S架构软件。同时要知道JavaEE 是 Java 应用最广泛的部分。
简单点说Java EE 企业版一般开发企业级互联网程序是用来做网站的-我们常见的JSP技术
JavaEE包含了什么
sercletjstljspspringmybatis
四、什么是Java ME
javaME这一块只需要了解就可以了因为现在很少有使用这个东西的了但是作为java程序员这些基本的板块还是的知道的。
官方解释
Java ME 又称为J2MEJava PlatformMicro Edition是为机顶盒、移动电话和PDA之类嵌入式消费电子设备提供的Java语言平台包括虚拟机和一系列标准化的Java API。
简单点说Java ME 小型版一般用于来研发嵌入式程序已经被Android替代了是做手机软件的。
五、JavaSEJavaEEJavaME的关系 六、那么我们应该学习哪个呢
1、Java EE 是开发 WEB 应用的例如网站网页等Java EE 包含Java SE要想学好Java EE除了Java SE 精通外你还要学一些其他的框架以及知识例如Spring、SpringMVC、MyBatis 等一些框架。Java 最厉害用的最多的地方就是做 WEB 应用。当然 WEB 应用大体也可分为 前端开发 和 后端开发服务器开发两类但是不管怎么样Java SE 是基础是必须要好好学的。
2、Java SE 是 Java EE 的基础所开发的东西也不一样如果想找一份好的工作还是把 Java SE 学好学精可以找一个几千块的工作如果把 Java EE 学精那么相信你的工资很快就会超过 20k。
前言
大多数人刚接触Java的时候都会经常看到JDK、JRE、JVM但可能一直迷迷糊糊不知道它们之间真正的作用和含义而了解JDK、JRE、JVM分别是什么及它们之间的关系有助于我们更加深刻的理解java语言的特性。
Java程序是运行在JVM(Java虚拟机)上的在开发程序之前要配置Java开发环境而配置环境要做的就是JDK的安装和配置。
三者的大致结构是这样的简单来说就是JDK包含JRE,JRE又包含JVM的关系。如下图所示
一、JDK简单介绍
JDKJava Development Kit 是Java的标准开发工具包普通用户只需要安装 JRE来运行 Java 程序。而程序开发者必须安装JDK来编译、调试程序。它提供了编译、运行Java程序所需的各种工具和资源包括Java编译器、Java运行环境JRE以及常用的Java基础类库等是整个JAVA的核心。
JDK一般有三种版本
SE(J2SE),standard edition,标准版是我们通常用的一个版本 EE(J2EE),enterpsise edtion,企业版使用这种JDK开发J2EE应用程序 ME(J2ME),micro edtion,主要用于移动设备、嵌入式设备上的java应用程序 相对来说现在使用的很少了
JDK安装目录下各个子文件目录和文档作用的详细介绍
下图是Java8中JDK的安装目录 bin文件里面存放了JDK的各种开发工具的可执行文件主要的是编译器(javac.exe)
db文件是一个先进的全事务处理的基于Java技术的数据库jdk自带数据库db的使用
include文件里面是Java和jvm交互用的头文件
jre为java运行环境
lib文件存放的是JDK工具命令的实际执行程序
二、JRE
JREJava runtime environment 是运行基于Java语言编写的程序所不可缺少的运行环境用于解释执行Java的字节码文件。
也是通过它Java的开发者才得以将自己开发的程序发布到用户手中让用户使用。JRE中包含了Java virtual machineJVMruntime class libraries和Java application launcher这些是运行Java程序的必要组件。与大家熟知的JDK不同JRE是Java运行环境并不是一个开发环境所以没有包含任何开发工具如编译器和调试器只是针对于使用Java程序的用户。 下图是Java8中JRE的安装目录里面有两个文件夹bin和lib。你可以认为bin里的就是JVMlib中则是JVM工作所需要的类库而JVM和 lib和起来就称为JRE 从JDK11开始JDK和JRE都是在一起的安装后默认是没有JRE的。如果需要JRE这个单独目录可以在JDK目录下面去打开命令窗口然后执行如下命令win10执行这个生成JRE需要目录权限
bin\jlink.exe --module-path jmods --add-modules java.desktop --output jre
执行完之后就会生成JRE但无论使用tomcat 还是eclipse没有JRE文件夹实际上并不影响你的使用。
三、JVM
JVMJava Virtual Machine 是Java的虚拟机是JRE的一部分。它是整个java实现跨平台的最核心的部分负责解释执行字节码文件是可运行java字节码文件的虚拟计算机。
所有平台的上的JVM向编译器提供相同的接口而编译器只需要面向虚拟机生成虚拟机能识别的代码然后由虚拟机来解释执行。
四、Java跨平台的原因
使用Java编译器编译Java程序时生成的是与平台无关的字节码这些字节码只面向JVM。不同平台的JVM都是不同的但它们都提供了相同的接口。
JVM是Java程序跨平台的最核心的部分只要为不同平台实现了相应的虚拟机编译后的Java字节码就可以在该平台上运行。其屏蔽了与具体操作系统平台相关的信息使得Java程序只需生成在Java虚拟机上运行的目标代码字节码就可以在多种平台上不加修改地运行。
正是因为有了JVM的存在Java才实现了强大的跨平台特性。
五、jvm执行程序的过程
加载.class 文件 所有的java程序会首先被编译为.class的类文件这种类文件可以在虚拟机上执行。也就是说class并不直接与机器的操作系统相对应而是经过虚拟机间接与操作系统交互由虚拟机将程序解释给本地系统执行。只有JVM还不能成功执行.class的类文件因为在解释class的时候JVM需要调用解释所需要的类库lib而jre包含lib类库。 运行class文件 可以在命令行中输入 java 字节码文件名 此时启动了一个jvm加载字节码文件名.class字节码文件到内存然后jvm运行内存中的字节码指令 在IDE上就类似于点击运行按钮。管理并分配内存执行垃圾收集 调用垃圾收集器进行垃圾回收
六、三者的区别与联系
JDK用于开发是给开发人员用的JRE 用于运行java程序和JVM是给普通用户使用的。如果只是运行Java程序可以只安装JRE无序安装JDK。也就是说使用JDK开发完成的java程序交给JRE去运行。JDK包含了JREJDK 和 JRE 中都包含 JVM。也可以说JDK是JREJava的开发工具。JRE包含了JVMJava语言的核心类库。