#常见编程语言介绍
C语言
C++语言
java语言
javaScript语言
PHP语言
python语言Object-C和Swift语言
C# (c sharp)语言
Kotlin语言
Go语言
Basic语言
#JAVA的发展
起源于1991年SUN公司GREEN项目,1996年JDK1.0正式发布
后被Oracle公司收购,一年两次更新
主流以java8以上的版本
#JAVA的核心优势
跨平台
跨平台是 Java 语言的核心优势,赶上最初互联网的发展,并随着互联网的发展而发展,
建立了强大的生态体系,目前已经覆盖 IT 各行业的“第一大语言”,是计算机界的“英语”。
#Java的各版本的含义
JavaSE(Java Standard Edition):标准版,定位在个人计算机上的应用
JavaEE(Java Enterprise Edition):企业版,定位在服务器端的应用
JavaME(Java Micro Edition):微型版,定位在消费性电子产品的应用上
#Java的特性
跨平台/可移植性
安全性
面向对象
简单性
高性能
分布式
多线程
健壮性
#Java的运行机制
1.java首先利用文本编译器编写java源程序,源文件后缀名为 .java ;
2.再利用编译器(javac)将源程序编译成字节码文件,字节码文件后缀名为 .class ;
3.最后用虚拟机(解释器,java)解释执行.
计算机高级语言的类型主要有编译型和解释型两种,而java语言是两种类型的结合。
#JVM、JRE和JDK
JVM(Java Virtual Machine): 用于执行 bytecode 字节码的”虚拟计算机”。不同的操作系统有不同版本 JVM,屏蔽了底层运行平台的差别,是实现跨平台的核心。
Java Runtime Environment (JRE) 包含:Java 虚拟机、库函数等。
Java Development Kit (JDK)包含:JRE,编译器和调试器等。
#语言类型扩展描述
C 语言
C 语言诞生于 1972 年,现代高级语言的鼻祖,由著名的贝尔实验室发明。在底层编程,比如嵌入式、病毒开发等应用,可以替代汇编语言来开发系统程序。在高层应用,也可以开发从操作系统(Linux/Windows 都基于 C 语言开发)到各种应用软件。
C++语言
作为 C 语言的扩展,C++是贝尔实验室于 80 年代推出的。C++是一种混合语言,既可以实现面向对象编程,也可以开发 C 语言面向过程风格的程序。C++语言在科学计算、操作系统、网络通讯、系统开发、引擎开发中仍然被大量使用。
Java 语言
由美国 SUN 公司(被 oracle 公司收购)发明于 1995 年,是目前业界应用最广泛、使用人数最多的语言,连续多年排名世界第一,可以称之为“计算机语言界的英语”。Java 广泛应用于企业级软件开发、安卓移动开发、大数据云计算等领域,几乎涉及 IT 所有行业。关于 Java 的发展历史和特性,将在后面专门介绍。
JavaScript 语言
JavaScript 是一种脚本语言,已经被广泛用于 Web 应用开发;应用范围越来越大,重要性越来越高。目前,前端开发核心其实就是 JavaScript 语言。
Python 语言
Python 发明于 1989 年,语法结构简单,易学易懂;Python 广泛应用于:人工智能、科学计算、web 编程等。
PHP 语言
PHP 原始为 Personal Home Page 的缩写,已经正式更名为 “PHP: Hypertext Preprocessor”。一般用于 WEB 开发领域;大量的中小型网站以及某些大型网站使用 PHP 开发。
Object-C 和 Swift 语言
Object-C 通常写作 Objective-C 或者 Obj-C 或 OC,是根据 C 语言所衍生出来的语言,继承了 C 语言的特性,是扩充 C 的面向对象编程语言。OC 主要用于苹果软件的开发。
Swift,苹果于 2014 年 WWDC(苹果开发者大会)发布的新开发语言,可与 OC 共同运行于 Mac OS 和 iOS 平台,用于搭建基于苹果平台的应用程序。
C#(c sharp)语言
C#是微软公司发布的一种面向对象的、运行于.NET Framework 之上的高级程序设计语言。
Kotlin 语言
Kotlin 已正式成为 Android 官方支持开发语言,并且是一种可以兼容 java 的语言。
Go 语言
Go(又称 Golang)是 Google 开发的一种静态强类型、编译型语言。
Basic 语言虽然易学,但功能不够强大,应用到大程序的有效性令人怀疑。已经逐步退出历史舞台。
#java特性扩展描述
跨平台/可移植性
这是 Java 的核心优势。Java 在设计时就很注重移植和跨平台性。比如:Java 的 int 永远都是 32 位。不像 C++可能是 16,32,可能是根据编译器厂商规定的变化。这样的话程序的移植就会非常麻烦。
安全性
Java 适合于网络/分布式环境,为了达到这个目标,在安全性方面投入了很大的精力,使 Java 可以很容易构建防病毒,防篡改的系统。
面向对象
面向对象是一种程序设计技术,非常适合大型软件的设计和开发。由于 C++为了照顾大量 C 语言使用者而兼容了 C,使得自身仅仅成为了带类的 C 语言,多少影响了其面向对象的彻底性!Java 则是完全的面向对象语言。
简单性
Java 就是 C++语法的简化版,我们也可以将 Java 称之为“C+±”。跟我念“C 加加减”,指的就是将 C++的一些内容去掉;比如:头文件,指针运算,结构,联合,操作符重载,虚基类等等。同时,由于语法基于 C 语言,因此学习起来完全不费力。
高性能
Java 最初发展阶段,总是被人诟病“性能低”;客观上,高级语言运行效率总是低于低级语言的,这个无法避免。Java 语言本身发展中通过虚拟机的优化提升了几十倍运行效率。比如,通过 JIT(JUST IN TIME)即时编译技术提高运行效率。 将一些“热点”字节码编译成本地机器码,并将结果缓存起来,在需要的时候重新调用。这样的话,使 Java 程序的执行效率大大提高,某些代码甚至接待 C++的效率。因此,Java 低性能的短腿,已经被完全解决了。业界发展上,我们也看到很多 C++应用转到 Java 开发,很多 C++程序员转型为 Java 程序员。
分布式
Java 是为 Internet 的分布式环境设计的,因为它能够处理 TCP/IP 协议。事实上,通过 URL 访问一个网络资源和访问本地文件是一样简单的。Java 还支持远程方法调用(RMI,Remote Method Invocation),使程序能够通过网络调用方法。
多线程
多线程的使用可以带来更好的交互响应和实时行为。 Java 多线程的简单性是 Java 成为主流服务器端开发语言的主要原因之一。
健壮性
Java 是一种健壮的语言,吸收了 C/C++ 语言的优点,但去掉了其影响程序健壮性的部分(如:指针、内存的申请与释放等)。Java 程序不可能造成计算机崩溃。即使 Java 程序也可能有错误。如果出现某种出乎意料之事,程序也不会崩溃,而是把该异常抛出,再通过异常处理机制加以处理。