1. 简单性
Java语法可以说是C++语法的一个"纯净"版本,没有头文件、指针运算(指针语法)、结构、联合、操作符重载、虚基类等
2. 面向对象
什么是面向对象:
面向对象是一种程序设计技术,它将重点放在数据(及对象)和对象的接口上。
可以这么说,面向对象首先关注的是需要制作的物品,其次才是所需要制作的工具
Java与C++主要不同点:
Java与C++的主要不同点在于多重继承,在Java中,取而代之的是更简单的接口概念
3.分布式
Java有一个例程库,用于处理像HTTP和FTP的TCP/IP协议
Java应用程序可以通过URL打开和访问网络上的对象
4.健壮性
Java编译器能检测许多其他语言运行时才能够检测出来的问题
java把c++里面很多警告变成错误 ,这样设计的原则是为了让劣质代码不能写出来
健壮性程序,1/9是核心代码 2/9是注释 2/3是处理可能的异常
5.安全性
沙箱机制:一个限制程序运行的环境, 就是将Java 代码限定在虚拟机(JVM)特定的运行范围中
并且严格限制代码对本地系统资源访问
6.体系结构中立
不是很懂,应该就是及时编译。
7.可以移植性
一次编译,到处运行。
8.解释型
Java解释器可以在任何移植了解释器的机器上直接执行Java字节码。(到处运行)
9.高性能
及时编译器可以监控哪些代码频繁执行,并优化这些代码以提高速度。以及其他优化。
10.多线程
后面再说
11.动态性
Java本质为静态语言,而不是动态语言。动态语言显著的特点是在程序运行时,可以改变程序结构或变量类型,
典型的动态语言有Python、ruby、javascript等。Java不是动态语言,但Java具有一定的动态性,
表现在以下几个方面:
反射机制;
动态字节码操作;
动态编译;
执行其他脚本代码;