Java语言是一种特殊的高级语言,它即具有解释型语言的特征,也具有编译型语言的特征,因为Java程序要经过先编译、后解释两个步骤。
下图为Java程序的执行过程: Java语言里复制解释执行字节码文件的是Java虚拟机,即JVM(Java Virtual Machine),JVM是可运行Java字节码文件的虚拟计算机。所有平台上的JVM向编译器提供相同的编程接口,而编译器只需要面向虚拟机生成虚拟机能理解的代码,然后由虚拟机来解释运行。字节码与平台无关,相同的字节码程序需要在不同的平台上运行,这需要通过中间的转换器才可以实现,JVM就是这个转换器。
面向对象是从现实世界中客观存在的事物(即对象)出发来构造软件系统,并在系统构造中尽可能运用人类的自然思维方式,强调直接以现实世界的事物(即对象)为中心思考,认识问题,并根据这些事物的本质特点,把他们抽象的表示为系统中的类,作为系统的基本构成单元,这使得软件系统的组件可以直接映像到客观世界,并保持客观世界中事物及其相互关系的本来面貌。
面向对象方法具有三个特征: 封装: 将对象的实现细节隐藏起来,通过一些公用方法来暴露该对象的功能。
继承:面向对象实现软件复用的重要手段,当子类继承父类后,子类作为一种特殊的父类,将直接获取父类的属性和方法。
多态:子类对象可以直接赋给父类变量,但运行时依然表现出子类的行为特征,这意味着同一个类型的对象在执行同一个方法时,可能表现出多种行为特征。
面向对象的方式由OOA(面向对象分析)、OOD(面向对象设计)、OOP(面向对象编程) 组成。
具有相同或相似性质的一组对象的抽象就是类,类是对一类事物的描述,是抽象的,概念上的定义。
对象的抽象化是类,类的具体化就是对象,也可以说类的实例是对象。对象是实际存在的该类事物的个体,因而也称为实例。