1
Java的面向对象:在Java中,一切都是对象,通俗地讲,就是在编程的时候,你把一些相互关联的数据和对数据的操作绑在一起,把它们看成一个整体,一个对象,一个事物,就像我们认知世界一样,世界是一个个事物(对象)组成的。这样做的好处是容易扩展,也就是说你的代码经过面向对象这样的思想组织起来非常有利于你以后继续添加代码、修改代码、删除代码。
2
Java的平台独立:也就是Java的跨平台性,像C/C++这些编程语言,它们在编译生成的都是平台相关的机器码,而Java不这么干,Java只编译生成平台无关的字节码,但是字节码并不能直接由机器运行,那怎么办呢?Java就是把字节码到机器码这部分工作交给了Java虚拟机(JVM,Java Virtual Machine),让Java虚拟机去解释字节码,最终变成机器指令,这样你的机器(比如说你的电脑)才能“理解”并执行。所以,跨平台是有代价的,就是你的机器(比如说你的电脑)得要安装Java虚拟机来解释字节码。
3
Java的简单:Java在设计的时候就考虑到简单易学。所以如果你有过面向对象编程(OOP)的基本概念,Java是非常容易掌握的。
4
Java的安全:由于Java编程生成的是字节码,并不是可以直接运行的机器码,所以有其安全优势。Java的安全认证技术是基于公钥加密(public-key encryption)的。
5
Java的体系架构中立:这里的体系结构中立主要是指不同CPU的体系架构,Java编译器生成的是一个体系架构中立的对象文件格式(an architecture-neutral object file format)。通俗地讲,就是一个Java程序也能在许多不同的CPU下运行,当然前提必须有Java运行时系统(Java runtime system)在你的电脑上。
6
Java的可移植性:由于Java的体系架构中立性、跨平台性,使得Java拥有可移植性。这里的可移植性是指你的Java程序从一台电脑复制到另一台电脑时,你不用再对注册表或者系统配置文件进行修改即可正常运行,我们知道Windows的注册表就是用于配置各种系统参数或应用软件参数使得软件能够正常运行,这一步通常在软件安装的时候进行的。通俗地讲,就是Java程序不需要“安装”,直接复制过来就能运行,而我们通常的软件是要经过“安装”才能运行。
7
Java的鲁棒性(Robust):鲁棒性也就是健壮性、稳定性,Java主要通过编译时检查和运行时检查这样的双重检查来保证Java程序的鲁棒性。
8
Java的多线程:Java的多线程特性使得Java程序能够同时执行多项任务,这对于交互响应要求非常高的程序设计是至关重要的。
9
Java的解释执行:Java的字节码是动态翻译成机器指令的,且不保存。这使得整个开发过程可以快速分析,因为它的程序链接是增量式的,轻量级的。
10
Java的高性能:如果你用即时编译器(Just-In-Time compiler)来编译Java代码,那么你的Java程序会获得高性能。
11
Java的动态性:Java程序能够携带大量的运行时信息,这些运行时信息能够验证和访问程序运行时的各种对象。
END