1计算机语言分类
计算机语言分类_eastlin-CSDN博客_计算机语言的分类https://blog.csdn.net/weilaidedakejilu/article/details/121939490
补充概念:
1.1面向接口编程
2.JAVA
Java介于编译型语言和解释型语言之间。
编译型语言如C、C++,代码是直接编译成机器码执行,但是不同的平台(x86、ARM等)CPU的指令集不同,因此,需要编译出每一种平台的对应机器码。
解释型语言如Python、Ruby没有这个问题,可以由解释器直接加载源码然后运行,代价是运行效率太低。
而Java是将代码编译成一种“字节码”,它类似于抽象的CPU指令,然后,针对不同平台编写虚拟机,不同平台的虚拟机负责加载字节码并执行,这样就实现了“一次编写,到处运行”的效果。当然,这是针对Java开发者而言。对于虚拟机,需要为每个平台分别开发。为了保证不同平台、不同公司开发的虚拟机都能正确执行Java字节码,SUN公司制定了一系列的Java虚拟机规范。
从实践的角度看,JVM的兼容性做得非常好,低版本的Java字节码完全可以正常运行在高版本的JVM上。
随着Java的发展,SUN给Java又分出了三个不同版本:
Java SE:Standard EditionJava
EE:Enterprise Edition
Java ME:Micro Edition
2.1ME 、SE、 EE
这三者之间有啥关系呢?
我们学的基础SE
Java SE就是标准版,包含标准的JVM和标准库,而Java EE是企业版,它只是在Java SE的基础上加上了大量的API和库,以便方便开发Web应用、数据库、消息服务等,Java EE的应用使用的虚拟机和Java SE完全相同。
Java ME就和Java SE不同,它是一个针对嵌入式设备的“瘦身版”,Java SE的标准库无法在Java ME上使用,Java ME的虚拟机也是“瘦身版”。(现在真正应用类似ME的是Android。类似的情况:理论OSI,实际TCP/IP体系)
2.2重点学习路线
-
学习Java SE,掌握Java语言本身、Java核心开发技术以及Java标准库的使用;
-
学习Java EE,那么Spring框架、数据库开发、分布式架构就是需要学习的;
-
学习大数据开发,那么Hadoop、Spark、Flink这些大数据平台就是需要学习的,他们都基于Java或Scala开发;
-
学习移动开发,那么就深入Android平台,掌握Android App开发。
Java SE的核心技术是基础
参考: