1.java的特点:
平台无关性 :对于c/c++而言,程序必须在特定的平台编译、连接、然后生成机器指令(就是根据当前平台的机器指令生成机器码文件),因此不能保证c/c++源程序可以在任意平台都被正确的运行。
java可以跨平台的主要原因是jre(主要由jvm,类库,核心文件),对于jvm的核心就是字节码指令。
字节码指令:可以被虚拟机直接识别 ,执行一组由0,1组成的序列码。
java虚拟机运行原理:java虚拟机负责将字节码翻译成虚拟机所在的 平台的 机器码,并让当前平台运行该机器码。
面向对象:面向对象编程思想是一种先进的编程思想,使问题简单化。
面向对象三大特性:
封装:将数据和对数据的 操作封装在一起,从具体的实例中 抽取共同的性质封装在一起。
继承:子类可以继承父类的属性和功能。
多态性:分为 两种 操作名称的多态(多个操作有相同的名字,但接受的消息类型必须不同),继承有关的多态 (同一个操作被不同类型调用时可能产生不同的行为)。
多线程:内置对多线程的支持,计算机在同一时刻只能执行一个线程,但处理器在不同线程切换十分快,超过了 人们接收信息的速度,所以感觉 多个线程在同时执行。
安全:JavaApplet将限制在java运行环境中,不允许访问计算机的 其他部分。
2.java和c/c++的关系
基础语法类似,但并非同一种语言,java语言不再有指针的概念。
编译java源文件:java虚拟机首先将程序的字节码文件加载到内存,然后再去解释、执行字节码文件。