1、简单性(Java剔除了C++中难以理解的、易混淆的特性,比如说取消了指针,用接口代替多重继承等。简单的另一方面就是小,Java解释器以及类支持大约为40KB)
2、面向对象(面向对象是一种程序的设计思想,重点是数据(即对象)和对象的接口上,所有的元素都要通过类和对象来访问)
3、分布性(能够处理HTTP和FTP之类的TCP/IP协议。通过URL打开和访问网络上的对象,就像访问本地资源一样)
4、健壮性(Java将检查程序在编译和运行时的错误,并消除错误。类型检查能帮助用户检查出许多在开发早期出现的错误)
5、安全性(Java使用Java可以构建防病毒,防篡改的系统,例如①未经授权读写代码,Java不可信代码在一个沙箱环境中执行,在这里他不会影响主系统②运行时堆栈溢出。如蠕虫和病毒常用的攻击手段, ③破环自己的进程空间之外的内存)
6、体系结构中立
7、可移植性(跨平台性,就是说你在window系统上写的程序,在其他操作系统上运行是没有问题)
8、解释型(Java解释器可以在任何移植了解释器的机器上执行Java字节码。由于链接时一个增量式且轻量级的过程,所以,开发过程也变得更加快捷)
9、高性能(Java中有个东西叫即时编译器,它可以优化代码提高速度,例如它可以知道有那些类已经加载过了)
10、多线程(可以带来更好的交互能力和实时行为,例如应用程序在同一时间并行执行多项任务,而且不影响数据共享)
11、动态性(可以动态调整库中方法和增加变量,而客户端不需要任何更改,例如反射机制)