1、项目一项目一 Java Java 语言概述语言概述 1.1 1.1 Java Java 的起源的起源 1.2 1.2 程序设计思想的发展程序设计思想的发展 1.3 1.3 JavaJava的三大开发体系的三大开发体系2022年8月8日星期一12022年8月8日星期一1.1 1.1 Java Java 的起源的起源 目前Java语言在全世界是使用最为广泛的计算机编程语言之一。它容易学习而且非常的好用,如果你学习过其它的编程语言,例如C+,你就会觉得C+和 Java非常的相似,主要是因为Java和C+中许多基础的语法一样,但是我们知道Java和C+是两种不同的语言,Java只需理解一些最基本的概念
2、,就能够编写出各种的应用程序。Java用一种更加容易理解的方式去实现,所以Java相对于C+是简单的。22022年8月8日星期一1.1.1 Java的由来的由来Java 总是和C+联系在一起,而C+则是从C语言派生而来的,所以Java 语言继承了这两种语言的大部分特性。Java 的语法是从C继承的,Java 许多面向对象的特性受到C+的影响。32022年8月8日星期一1.1.2 Java1.1.2 Java的产生的产生 Java 是由James Gosling,Patrick Naughton,Chris Warth,Ed Frank 和Mike Sheridan于1991 年在Sun Mic
3、rosystems 公司设计出来的。开发第一个版本花了18个月。该语言开始名叫“Oak”,于1995年更名为“Java”。从1992 的秋天Oak 问世到1995的春天公开发布Java 语言,许多人对Java 的设计和改进做出了贡献。Bill Joy,Arthur van Hoff,Jonathan Payne,Frank Yellin 和Tim Lindholm 是主要的贡献者,正是他们的贡献使最初原型得以成熟。42022年8月8日星期一1.1.3 Java1.1.3 Java对对InternetInternet为什么重要为什么重要Internet使Java成为网上最流行的编程语言,同时Ja
4、va对Internet的影响也意义深远。在Java 产生以前,当前赛百空间有一半的对象实体无法进入网络世界,是Java为它们打开了便利之门,而且在这个过程中定义了一种全新的程序形式:applet(小应用程序)。52022年8月8日星期一(1)Java 小应用程序和应用程序Java 可用来生成两类程序:应用程序(applications)和Java applet(小应用程序。应用程序是可以在你的计算机的操作系统中运行的程序。小应用程序是可以在Internet 中传输并在兼容Java的Web浏览器中运行的应用程序。62022年8月8日星期一(2)安全性当使用一个兼容Java的Web浏览器时,你可以
5、安全地下载Java小应用程序,不必担心病毒的感染或恶意的企图。Java实现这种保护功能的方式是,将Java 程序限制在Java运行环境中,不允许它访问计算机的其他部分,后面将介绍这个过程是如何实现的。下载小应用程序并能确保它对客户机的安全性不会造成危害是Java的一个最重要的方面。72022年8月8日星期一(3)可移植性正如前面所讨论的,许多类型的计算机和操作系统都连接到Internet上。要使连接到Internet上的各种各样的平台都能动态下载同一个程序,就需要有能够生成可移植性执行代码的方法。很快你将会看到,有助于保证安全性的机制同样也有助于建立可移植性。实际上,Java对这两个问题的解决
6、方案是优美的也是高效的。82022年8月8日星期一1.1.4 Java1.1.4 Java的魔力:字节码的魔力:字节码字节码是一套设计用来在Java运行时系统下执行的高度优化的指令集,该Java运行时系统称为Java虚拟机(JavaVirtual Machine,JVM)。在其标准形式下,JVM就是一个字节码解释器。然而,正是通过JVM运行Java 程序才有助于解决在Internet 上下载程序的主要问题。这就是Java 输出字节码的原因。92022年8月8日星期一将Java 程序翻译成字节码,有助于它更容易地在一个大范围的环境下运行程序。原因非常直接:只要在各种平台上都实现Java 虚拟机就
7、可以了。在一个给定的系统中,只要系统运行包存在,任何Java 程序就可以在该系统上运行。记住:尽管不同平台的Java 虚拟机的细节有所不同,但它们都解释同样的Java 字节码。102022年8月8日星期一1.1.5 Java1.1.5 Java常用语常用语 简单(Simple)安全(Secure)可移植(Portable)面向对象(Object-oriented)健壮(Robust)11 多线程(Multithreaded)体系结构中立(Architecture-neutral)解释执行(Interpreted)高性能(High performance)分布式(Distributed)动态(D
8、ynamic)2022年8月8日星期一122022年8月8日星期一1.2 程序设计思想的发展程序设计思想的发展1.2.1 1.2.1 面向对象编程面向对象编程Java的核心是面向对象编程。事实上,所有的Java程序都是面向对象的,你别无选择。这一点与C+不同,因为在那里你可以选择是否面向对象编程。面向对象编程与Java密不可分,因此,在你编写哪怕是最简单的Java程序以前,也必须理解它的基本原则。因此,先从面向对象编程的概念讲起。132022年8月8日星期一(1)两种范型我们知道,所有的计算机程序都由两类元素组成:代码和数据。此外,从概念上讲,程序还可以以它的代码或是数据为核心进行组织编写。1
9、42022年8月8日星期一这两种范型决定程序的构建方法。第一种方法被称为面向过程的模型(process-oriented model),用它编写的程序都具有线性执行的特点。面向过程的模型可认为是代码作用于数据,像C这样的过程式语言采用这个模型是相当成功的。然而,当程序变得更大并且更复杂时,就会出现问题。152022年8月8日星期一第二种方式,也就是面向对象的编程(object-orientedprogramming)。面向对象的编程围绕它的数据(即对象)和为这个数据严格定义的接口来组织程序。面向对象的程序实际上是用数据控制对代码的访问。下面你将看到,将控制的实体变换为数据,可使程序在组织结构上
10、从若干方面受益。162022年8月8日星期一(2)抽象面向对象编程的一个实质性的要素是抽象。人们通过抽象(abstraction)处理复杂性。例如,人们不会把一辆汽车想象成由几万个互相独立的部分所组成的一套装置,而是把汽车想成一个具有自己独特行为的对象。172022年8月8日星期一面向对象的概念是Java 的核心,对程序员来讲,重要的是要理解这些概念怎么转化为程序。你将会发现,在任何主要的软件工程项目中,软件都不可避免地要经历概念提出、成长、衰老这样一个生命周期,而面向对象的程序设计,可以使软件在生命周期的每一个阶段都处变不惊,有足够的应变能力。182022年8月8日星期一(1)封装封装(En
11、capsulation)是将代码及其处理的数据绑定在一起的一种编程机制,该机制保证了程序和数据都不受外部干扰且不被误用。191.2.2 1.2.2 面向对象编程的面向对象编程的3 3个原则个原则2022年8月8日星期一理解封装性的一个方法就是把它想成一个黑匣子,它可以阻止在外部定义的代码随意访问内部代码和数据。对黑匣子内代码和数据的访问通过一个适当定义的接口严格控制。202022年8月8日星期一Java封装的基本单元是类。一个类(class)定义了将被一个对象集共享的结构和行为(数据和代码)。一个给定类的每个对象都包含这个类定义的行为和结构,好像它们是从同一个类的模子中铸造出来似的。所以,类是
12、一种逻辑结构,而对象是真正存在的物理实体。212022年8月8日星期一既然类的目的是封装复杂性,在类的内部就应该有隐藏实现复杂性机制。类中的每个方法或变量都可以被标记为私有(private)或公共(public)。类的公共接口代表类的外部用户需要知道或可以知道的每件事情;私有方法和数据仅能被一个类的成员代码所访问,其他任何不是类的成员的代码都不能访问私有的方法或变量。222022年8月8日星期一(2)继承继承(Inheritance)是一个对象获得另一个对象的属性的过程。继承很重要,因为它支持了按层分类的概念。使用了继承,一个对象就只需定义使它在所属类中独一无二的属性即可,因为它可以从它的父类
13、那儿继承所有的通用属性。所以,可以这样说,正是继承机制使一个对象成为一个更具通用类的一个特定实例成为可能。232022年8月8日星期一继承性与封装性相互作用。如果一个给定的类封装了一些属性,那么它的任何子类将具有同样的属性,而且还添加了子类自己特有的属性。这是面向对象的程序在复杂性上呈线性而非几何性增长的一个关键概念。新的子类继承它的所有祖先的所有属性。它不与系统中其余的多数代码产生无法预料的相互作用。242022年8月8日星期一(3)多态性多态性(Polymorphism,来自于希腊语,表示“多种形态”)是允许一个接口被多个同类动作使用的特性,具体使用哪个动作与应用场合有关。251.2.3
14、1.2.3 多态性、封装性与继承性相互作用多态性、封装性与继承性相互作用如果用得当,在由多态性、封装性和继承性共同组成的编程环境中可以写出比面向过程模型环境更健壮、扩展性更好的程序。2022年8月8日星期一26所有的Java程序都是面向对象的。或者,更精确地说,每个Java程序都具有封装性、继承性及多态性。Java提供的许多特性是它的内置类库的一部分,这个库使封装性、继承性及多态性得到更广泛应用。2022年8月8日星期一271.3 Java1.3 Java的三大开发的三大开发体系体系Java发展到今天,已从编程语言发展成为全球第一大通用开发平台。Java技术已被计算机行业主要公司所采纳。199
15、9年,Sun公司推出了以Java2平台为核心的J2SE、J2EE和J2ME三大平台。随着三大平台的迅速推进,全球形成了一股巨大的Java应用浪潮。2022年8月8日星期一281Java 2 Platform,Standard Edition(J2SE)2Java 2 Platform,Enterprise Edition(J2EE)3Java 2 Platform,Micro Edition(J2ME)2022年8月8日星期一29J2SE用于小型程序,J2EE用于大型程序,J2ME用于手机等程序。J2SE包含于J2EE中,J2ME包含了J2SE的核心类,但新添加了一些专用类。J2SE是基础;压缩一点,再增加一些CLDC等方面的特性就是J2ME;扩充一点,再增加一些EJB等企业应用方面的特性就是J2EE。2022年8月8日星期一30谢谢 谢谢!2022年8月8日星期一31