Java语言特性

java

Java 语言特性

sun 公司对 Java 的描述:"Java is a simple,object-oriented, distributed, interpreted, robust, secure, architecture neutral, portable, high-performance, multihreaded, and dynamic language"。翻译 起来就是: “Java 是一门简单的,面向对象,分布式,解释性,健壮的,安全的,结构中立的,便 捷的,高性能的,多线程的,动态的语言”。那么,在学习 Java 编程语言之前,让我们一起 来看一看它有哪些特性吧?

① 简单性:Java 语言底层采用 C++语言实现,相对于 C++来说,Java 是简单的,在 Java 语言中程序员不需要再操作复杂的指针(指针的操作是很复杂的),继承方面也是只支持单继 承(C++语言是一种半面向对象的编程语言,支持多继承,多继承会导致关系很复杂),在很 多方面进行了简化。

② 面向对象:Java 中提供了封装、继承、多态等面向对象的机制。

健壮性:在 C++程序当中的无用数据/垃圾数据需要编程人员手动释放,当忘记释放内 存的时候,会导致内存使用率降低,影响程序的执行;在Java 语言当中这种问题得到了解决, 因为 Java 语言引入了自动垃圾回收机制(GC 机制),Java 程序启动了一个单独的垃圾回收线 程,时刻监测内存使用情况,在特定时机会回收/释放垃圾数据,这样会让内存时刻处于最好 的状态。

④ 多线程:Java 语言支持多个线程同时并发执行,同时也提供了多线程环境下的安全机 制。

可移植性/跨平台:可移植性/跨平台表示 Java 语言只需要编写/编译一次,即可处处运 行。Java 代码既可以运行在 windows 的环境下,又可以运行在 Linux 的环境下,而不需要修改 Java 源程序,那么它是怎么做到的呢?功劳全在于“Java 虚拟机(Java Virtual Machine,简称 JVM)”这种机制,实际上 Java 程序运行的时候并不是直接运行在操作系统上面的,而是在 操作系统上先安装了一个 JVM,把 Java 程序放到了 JVM 当中运行,JVM 屏蔽了各操作系统 之间的差异,这样就完成了跨平台。但是,JVM 的出现虽然搞定了跨平台,同时也带来了一 些问题,比如要想运行 Java 程序就必须先安装 JVM,没有 JVM,Java 程序是运行不了的,就 像你要在网页上看视频,结果浏览器却提示你需要安装 Flash 插件,这一点你是不是感觉非常 不爽呀!那么 Java 程序、Java 虚拟机、操作系统之间是怎样的关系呢?请看下图:

                                      图 1-3:Java 程序、JVM、OS 之间的关系

通过上图我们可以看到不同的操作系统中安装的 JVM 肯定也是不同的,windows 操作系 统则必须安装 windows 版本的 JVM,Linux 操作系统则必须安装 Linux 版本的 JVM。这是因 为 JVM 是和操作系统直接打交道的,windows 和 Linux 操作系统本身的执行原理不同,所以 JVM 肯定也必须是定制的,不能通用。但是 Java 程序放到 windows 的 JVM 上和放到 Linux 的 JVM 上最终执行效果是完全相同的。这是因为:虽然 JVM 版本不同,但是所有版本的 JVM 的实现都是遵守 sun 制定的 JVM 规范的,这样就可以达到编写一次到处运行的效果,有没有 感觉很神奇呀!

当然,Java 语言除了以上的特性之外还有很多其它的特性,我在这里就不再一一赘述了, 大家对以上的特性来说重点知道Java 的跨平台性以及垃圾回收机制即可,其它的作为了解。

以上是 Java语言特性 的全部内容, 来源链接: utcz.com/z/394959.html

回到顶部