2.1.2 JAVA语言的发展历史
Java的前身是一种与平台无关的语言——oak,它是sun公司的一个研究项目。该项目是由Java之父的James Gosling和Patrick Naughton领导的Green研究小组承担,为诸如面包机、电视机、机顶盒这样的消费类电子设备设计一个通用的环境,目的是为开发一张独立于平台的控制软件,以便于和这些软件交流。刚开始,项目小组准本采用C++,但C++太复杂,并且安全性差,最后他们决定基于C++开发一种新的语言——oak(Java的前身)。该语言采用了很多C语言的语法,提高了安全性,并且是面向对象的语言,但是跟预期的结果相差比较大,并不成功。同样该语言在商业上也未能获得成功,甚至是差点夭折。之后随着Internet的起步,改变了oak的命运。Internet出现后,oak语言所具有的跨平台性、面向对象、安全性高等特点,非常符合互联网的需要。于是,进步一改进oak语言的设计后,设计人员最终将这种语言取名为Java,并且配上了一杯冒着热气的咖啡作为他的标志(Java的名字来源于印度尼西亚爪哇岛的英文名称,这个岛因盛产咖啡而闻名,Sun和Java的标示也正是一杯冒着热气的咖啡)。从此,标志着Java语言的诞生,一种全新的语言诞生了。
十多年来,Java语言如同咖啡一样醇香动人。目前,Java语言仍是世界上最受欢迎的编程语言之一,而且是一种面向对象的高级编程语言。
2.1.3 Java语言的特点
1) Java语言是简单。一方面Java语言与C++语言和C语言接近;另一方面,Java语言丢弃了C++很少使用、很难理解的特性。特别是Java语言不在使用指针,并且提供了自动的内存收集,是的程序员不必为内存管理而担忧。
2) Java语言是面相对象的。Java语言支持类之间的单继承,但支持接口的多继承,并且支持类与接口之间的实现机制,它也是一个纯面向对象的程序设计语言。
3) Java语言是分布式的。
4) Java语言是安全的。
5) Java语言是体系结构中立的。Java程序(后缀为.java的文件)在Java平台上被编译为体系中结构中立的字节码文件(后缀为.class的文件),它可以在实现这个平台上的任何系统中运行的。
6) Java语言是可移植的。它是一种与具体的硬件无关的。
7) Java语言是编译解释性的。Java程序在它的本身的平台上是以字节码格式,可以在能实现这个平台的任何操作系统中运行的。在运行时,Java平台中的Java解释器对这些字节码进行解释执行的,执行过程中将需要的类在连接阶段被载入到运行环境中。
8) Java语言是高性能的。
9) Java语言是多线程的。
10) Java语言是动态的。Java语言的设计目标之一是适应动态变化的环境。Java程序需要的类能够动态的载入到运行环境中。
11) Java语言是健壮性的。Java语言丢弃了对指针的使用,这样使得java语言更具健壮性。
Java编程语言的优良特性使得Java被广泛的使用,且各大应用平台更具有健壮性和可靠性,这样也使得减少了维护的费用。
2.1.4 基本含义
类是现实世界或思维世界中的实体在计算机中的反映,它将数据以及数据上的操作封装在一起,类是具有相同属性和方法的一组对象的集合。对象是具有类类型的变量,类是对象的抽象,而对象是类的具体实例。类是抽象的,不占用内存,而对象是具体的,占用存储空间。类描述了对象的构造,而且可用作构建对象的蓝图。定义了类之后,该类的名称即成为新的数据模型,且可用于声明该类型的变量和创建该类的对象。抽象类必须用abstract定义,抽象类只是用来派生子类,抽象类不能实例化。