目录
Java之父
1,Java之父——詹姆斯·高斯林出生于加拿大,在卡内基·梅隆大学攻读计算机博士学位时,他编写了多处理器版本的Unix操作系统,是Java编程语言的创始人。
Java的诞生
-
Java诞生于1995年5月23日,是一门面向对象编程语言,不仅吸收了C++语言的各种优点,还摒弃了C++里难以理解的多继承、指针等概念,因此Java语言具有功能强大和简单易用两个特征。Java语言作为静态面向对象编程语言的代表,极好地实现了面向对象理论,允许程序员以优雅的思维方式进行复杂的编程。
-
Java具有简单性、面向对象、分布式、健壮性、安全性、平台独立与可移植性、多线程、动态性等特点。
-
javase 可以编写桌面应用 Javame 可以编写手机应用 Javaee可以开发服务器
Java特性和优势
简单性
java就是c++的纯净版,没有头文件,没有指针运算,不用分配内存。
面向对象
对 java语言来说,一切皆是对象。把现实世界中的对象抽象地体现在编程世界中,一个对象代表了某个具体的操作。一个个对象最终组成了完整的程序设计,这些对象可以是独立存在的,也可以是从别的对象继承过来的。对象之间通过相互作用传递信息,实现程序开发。
对象的概念
-
对象具有属性和行为
-
对象具有变化的状态
-
对象具有唯一性
面向对象的三大核型
-
可重用性:代码重复使用,减少代码量,提高开发效率
-
可扩展性:指新的功能可以很容易地加入到系统中来,便于软件的修改。
-
可管理性:能够将功能与数据结合,方便管理。
可移植性
可移植性指的是同一个程序可以在不同的操作系统之间任意的进行运行, Java 里实现可移植性的控制,那么主要是依靠的是 JVM ( Java 的虚拟机)
分布式
-
分布式就是通过计算机网络将后端工作分布到多台主机上,多个主机一起协同完成工作。
-
举个栗子,淘宝,平时大家都会使用,它本身就是一个分布式系统,我们通过浏览器访问淘宝网站时,这个请求的背后就是一个庞大的分布式系统在为我们提供服务,整个系统中有的负责请求处理,有的负责存储,有的负责计算,最终他们相互协调把最后的结果返回并呈现给用户
动态性
Java本来不具备动态的,但是有一个机制,反射机制,让Java有动态性,大多数框架的底层都是反射机制
多线程
-
所谓多线程是指一个进程在执行过程中可以产生多个更小的程序单元,这些更小的单元称为线程,
-
举个栗子比如:比如打游戏的时候可以打开QQ,或者放歌曲
安全性
java系统每次运行的时候都会对,都会对内存进行检查,
健壮性
健壮性体现在java异常处理机制
JDK,JRE,JVM
-
jdk就是开发的工具包
-
jrei就是开发的运行环境
-
jvm就是Java的虚拟机,它是一个虚构出来的计算机,是通过在实际的计算机上仿真模拟各种计算机功能来实现的
Java程序运行机制基本
类加载器
把源文件先编译成class文件
在到jvm虚拟机里面
class文件然后放到类加载器里面
字节码校验器
判断代码对不对
解释器
然后解释给操作系统
编译型
例如c/c++,首先将源码编程成机器语言,再由机器运行机器码
举个栗子:比如就像美国人要看中国的书,老外直接看不懂,所以就要给他翻译成直接是英文版的书籍,
解释型
例如java/js,是在运行的时候将程序翻译成机器语言。只要平台提供相应的解释器,就可以运行源代码,方便程序移植。
举个栗子:比如还是美国人看书,还是看不懂所以就请了一个翻译官,给他翻译一句他听一句