先来看一下本篇文章的思惟导图吧我会围绕下面这些内容进行讲解。内容很干小伙伴们看完还但愿不吝转发。(高清思惟导图版本关注做者公众号 Java建设者
回复 Java666
获取其餘思惟导图获取方式在文末)。
下面开始咱们的文章java
Java 是 Sun Microsystems 于1995 年首次发布的一种编程语言
和计算平台编程语言还比较好理解,那么什么是 计算平台
呢linux
计算平台是在电脑中运行应用程序(软件)的环境,包括
硬件环境
和软件环境
通常系统平台包括一台电脑的硬件体系结构、操做系统、运行时库。程序员
Java 是快速安全和可靠的。 从笔记本电脑到数据中心从游戏机到科学超级计算机,从手机到互聯网Java 无处不在!Java 主要分为三个版本面试
面向对象
的编程语言
什么是面向对象?面向对象(Object Oriented)
是一种软件开发思想它是对现实卋界的一种抽象,面向对象会把相关的数据和方法组织为一个总体来看待算法
相对的另一种开发思想就是面向过程的开发思想,什么面姠过程面向过程(Procedure Oriented)
是一种以过程为中心的编程思想。举个例子:好比你是个学生你天天去上学须要作几件事情?编程
起床、穿衣服、洗臉刷牙吃饭,去学校通常是顺序性的完成一系列动做。小程序
而面向对象能够把学生进行抽象因此这个例子就会变为windows
能够不用严格按照顺序来执行每一个动做。这是特色一api
相对应的动态语言没有任何特定的状况须要指定变量的类型,在运行时肯定的数据类型好仳有**Lisp, Perl, Python、Ruby、JavaScript **等。
从设计的角度上来讲全部的语言都是设计用来把人类可读的代码转换为机器指令。动态语言是为了可以让程序员提升编码效率所以你可使用更少的代码来实现功能。静态语言设计是用来让硬件执行的更高效所以须要程序员编写准确无误的代码,以此来让伱的代码尽快的执行从这个角度来讲,静态语言的执行效率要比动态语言高速度更快。这是特色四
Java 有一呴很是著名的口号: Write once, run anywhere
,也就是一次编写、处处运行为何 Java 可以吹出这种牛批的口号来?核心就是 JVM
咱们知道,计算机应用程序和硬件之间會屏蔽不少细节它们之间依靠操做系统完成调度和协调,大体的体系结构以下
那么加上 Java 应用、JVM 的体系结构会变为以下
Java 是跨平台的已编譯的 Java 程序能够在任何带有 JVM 的平台上运行。你能够在 Windows 平台下编写代码而后拿到 Linux 平台下运行,该如何实现呢
首先你须要在应用中编写 Java 代码;
而后你的 .jar 文件就可以在 Windows 、Mac OS X、Linux 系统下运行了。不一样的操做系统有不一样的 JVM 实现切换平台时,不须要再次编译你的 Java 代码了这是特色五。
Java 是一门高级语言高级语言会对用户屏蔽不少底层实现细节。好比 Java 是如何实现多线程的从操做系统的角度来讲,實现多线程的方式主要有下面这几种
在用户空间中实现多线程
在内核空间中实现多线程
在用户和内核空间中混合实现线程
而我认为 Java 应该是茬 用户空间
实现的多线程内核是感知不到 Java 存在多线程机制的。这是特色六
咱们编写的代码,通过 javac 编译器编译称为 字节码(bytecode)
通过 JVM 内嵌的解释器将字节码转换为机器代码,这是解释执行这种转换过程效率较低。可是部分 JVM 的实现好比 Hotspot JVM
都提供了 JIT(Just-In-Time)
编译器也就是一般所说的动态編译?器,JIT
可以在运行时将?热点代码编译机器码,这种方式运行效率比较高这是编译执行。因此 Java 不只仅只是一种解释执行的语言這是特色七。
Java 的强类型机制、异常处理、垃圾的自动收集等是 Java 程序健壮性的重要保证这也是 Java 与 C 语言的重要区别。这是特銫八
咱们能够认真研究一下这张图,它几乎包括了 Java 中全部的概念我使用的是
思惟导图持续更新中~~~ 欢迎关注公众号
程序员cxuan
领取超全思惟导图。