Java语言简述
Oak:Java的前身,1991年出现,1994年将Oak语言更名为Java。
James Gosling:詹姆斯·高斯林,Java的主设计者,由他和他的同事们共同研发。
Java 是由Sun Microsystems公司于1995年5月推出的高级程序设计语言。
Java是一种面向Internet的编程语言。
Java的三个体系
Java SE(Java 2 Platform Standard Edition)标准版【J2SE】
支持面向桌面级应用(如Windows下的应用程序)的Java平台,提供了完整的Java核心API,此版本以前称为J2SE,是其它两者的基础。
Java ME(Java 2 Platform Micro Edition)小型版、微型版【J2ME】
支持Java程序运行在移动终端(手机、PDA)上的平台,对Java API有所精简,并加入了针对移动终端的支持,此版本以前称为J2ME。
Java EE(Java 2 Platform Enterprise Edition)企业版【J2EE】
是为开发企业环境下的应用程序提供的一套解决方案。该技术体系中包含的技术如:Servlet 、Jsp等,主要针对于Web应用程序开发。版本以前称为J2EE。
2005年6月,JavaOne大会召开,SUN公司公开Java SE 6。此时,Java的各种版本已经更名以取消其中的数字"2"。从此J2EE更名为Java EE,J2SE更名为Java SE,J2ME更名为Java ME。
三种技术的关系:
Java在各领域中的应用
从Java的应用领域来分,Java语言的应用方向主要表现在以下几个方面:
企业级应用:主要指复杂的大企业的软件系统、各种类型的网站。Java的安全机制以及它的跨平台的优势,使它在分布式系统领域开发中有广泛应用。应用领域包括金融、电信、交通、电子商务等。
Android平台应用:Android应用程序使用Java语言编写。Android开发水平的高低很大程度上取决于Java语言核心能力是否扎实。
移动领域应用:主要表现在消费和嵌入式领域,是指在各种小型设备上的应用,包括手机、PDA、机顶盒、汽车通信设备等。
Java语言的特性
1、简单性(简洁有效、易学)
Java丢弃了C++中很少使用的、很难理解的、令人迷惑的那些特性,如操作符重载、多继承、自动的强制类型转换。特别地,Java语言不使用指针,而是引用。并提供了自动的废料收集,使得程序员不必为内存管理而担忧。
2、面向对象(强制面向对象)
Java语言提供类、接口和继承等面向对象的特性,为了简单起见,只支持类之间的单继承,但支持接口之间的多继承,并支持类与接口之间的实现机制。
Java语言全面支持动态绑定,而C++语言只对虚函数使用动态绑定。
3、分布式处理(适合分布式计算)
Java语言支持Internet应用的开发,在基本的Java应用编程接口中有一个网络应用编程接口(java net),它提供了用于网络应用编程的类库。
Java的RMI(远程方法激活)机制也是开发分布式应用的重要手段。
4、健壮性(鲁棒性,防患于未然)
Java吸收了C/C++语言的优点,但去掉了其影响程序健壮性的部分(如指针、内存的申请与释放等),提供了一个相对安全的内存管理和访问机制。
Java的强类型机制、异常处理、垃圾的自动收集等是Java程序健壮性的重要保证。对指针的丢弃是Java的明智选择。
5、结构中立(是一种中性结构)
Java程序(后缀为java的文件)在Java平台上被编译为体系结构中立的字节码格式(后缀为class的文件),然后可以在实现这个Java平台的任何系统中运行。这种途径适合于异构的网络环境和软件的分发。
6、跨平台(可移植性)
通过Java语言编写的应用程序在不同的系统平台上都可以运行。“Write once , Run Anywhere”
原理:只要在需要运行 java 应用程序的操作系统上,先安装一个Java虚拟机 (JVM Java Virtual Machine) 即可。由JVM来负责Java程序在该系统中的运行。
Java系统本身也具有很强的可移植性,Java编译器是用Java实现的,Java的运行环境是用ANSI C实现的。
7、解释型(解释性)
Java程序在Java平台上被编译为字节码格式,然后可以在实现这个Java平台的任何系统中运行。在运行时,Java平台中的Java解释器对这些字节码进行解释执行,执行过程中需要的类在联接阶段被载入到运行环境中。
8、高性能(具有较好的性能)
与那些解释型的高级脚本语言相比,Java的确是高性能的。
9、多线程(具有多线程处理能力)
Java语言支持多个线程的同时执行,并提供多线程之间的同步机制。
10、安全性(具有较高的安全性)
Java通常被用在网络环境中,为此,Java提供了一个安全机制以防恶意代码的攻击。
11、动态(是一种动态语言)
Java程序需要的类能够动态地被载入到运行环境,也可以通过网络来载入所需要的类。这也有利于软件的升级。另外,Java中的类有一个运行时刻的表示,能进行运行时刻的类型检查。
Java的开发工具
Java语言尽量保证系统内存在1G以上,其他工具如下所示:
Linux 系统、Mac OS 系统、Windows 95/98/2000/XP,WIN 7/8/10系统。
Java JDK 7、8、9……
IDE:Eclipse