1、Java基础入门教程适合所有菜鸟第2章 Java语言开发环境 62.1 JDK 62.1.1 JDK的简介 62.1.2 JDK的构成 62.1.3 JDK的使用 62.2 IDE 82.2.1 IDE简介 82.2.2 JBuilder 92.2.3 Eclipse 92.2.4 相关资源 92.3 Project管理 92.3.1 Project的含义 92.3.2 可行的Project组织模式 9 102.4 本章小结 10习题 10 第1章 Java语言概述与面向对象思想1.1 Java语言的开展1.1.1 Java语言的产生上世纪90年代初期,Sun公司在研究一种适用于未来的智能设备
2、的编程语言,该语言要具有一些新的特性,以防止C+的一些缺乏。该语言起初命名为Oak,来源于语言作者Gosling办公室窗外的一棵橡树Oak。后来在注册时候遇到了冲突,于是就从手中的热咖啡联想到了印度尼西亚一个盛产咖啡的岛屿,中文名叫爪哇,Java语言得名于此。随着Internet的迅速开展,Web应用日益广泛,Java语言也得到了迅速开展。1994年,Gosling用Java开发了一个实时性较高、可靠、平安、有交互功能的新型Web浏览器,它不依赖于任何硬件平台和软件平台。这种浏览器名称为HotJava,并于1995年同Java语言一起,正式在业界对外发表,引起了巨大的轰动,Java的地位随之而
3、得到肯定。此后的开展非常迅速。Java编程语言的句法与C+的句法相似,语义那么与Small Talk TM的语义相似。Java编程语言可被用来创立任何常规编程语言所能创立的应用程序。设计Java编程语言的主要目标是: 提供一种易于编程的语言,从而消除其它语言在诸如指针运算和存储器管理方面影响健壮性的缺陷。 利用面向对象的概念使程序真正地成为完全面向对象的程序。 为获得如下两点益处提供一种解释环境:提高开发速度消除编译链接装载测试周期;代码可移植性使操作系统能为运行环境做系统级调用。 为运行不止一个活动线程的程序提供了一种方式。 通过允许下载代码模块,从而当程序运行时也能动态支持程序改变。 精心
4、开发的Java核心技术为上述目标的实现提供了保证,其中包括如下几个主要技术: Java虚拟机 自动垃圾收集 代码平安性1.1.2 Java语言的开展Java语言的开展目标并不仅仅是一种编程语言,同时还要构建一种开发环境、一种应用环境、一种部署环境。 J2SE标准Java平台J2SE是Java语言的标准版,指的就是JDK1.2及其以后版本,包含Java根底类库和语法。它用于开发具有丰富的GUI图形用户界面、复杂逻辑和高性能的桌面应用程序。 J2EE企业级Java平台 J2ME嵌入式Java技术平台J2ME也是建立在J2SE之上,主要用于开发具有有限的连接、内存和用户界面能力的设备应用程序。例如移
5、动 、PDA电子商务、能够接入电缆效劳的机顶盒或者各种终端和其他消费电子产品。任何语言建立的应用程序的类型或多或少都与应用程序的运行环境有关,而Java语言一般可以建立如下的两种程序: Applications AppletsApplets是一种贮存于WWW效劳器上的用Java编程语言编写的程序,它通常由浏览器下载到客户系统中,并通过浏览器运行。Applets通常较小,以减少下载时间,它由超文本标识语言HTML的Web页来调用。Java运行环境具有一些特殊性,或者有很多特殊的人为建立的运行环境,所以Java编程中经常建立各种组件,它们可以在特定环境中运行,如Servlet、JavaBean、J
6、SP等。在Java技术体系中,有很多免费或非免费的第三方Java组件,他们往往提供了某一方面的解决方案,可以应用在很多工程的开发过程中。学习Java语言需要逐渐了解Java技术体系,从局部细节开始学习,从整体中进行认识并选择方向,从应用中进行稳固提高。1.2 Java语言的特点Java语言适用于Internet环境,是一种被广泛使用的网络编程语言,它具有如下的一些特点: 简单 面向对象近于完全Java语言为了提高效率,定义了几个根本的数据类型以非类的方式实现,余下的所有数据类型都以类的形式进行封装,程序系统的构成单位也是类。因而几乎可以认为是完全面向对象。 平台无关性可移植、跨平台Java虚拟
7、机JVM是在各种体系结构真实机器中用软件模拟实现的一种想象机器,必要时候可以用硬件实现。依赖于虚拟机技术,Java语言具有与机器体系结构无关的特性,即Java程序一旦编写好之后,不需进行修改就可以移植到任何一台体系结构不同的机器上。从操作系统的角度看,执行一次Java程序的过程就是执行一次Java 虚拟机进程的过程。 面向网络编程Java语言产生之初就面向网络,在JDK中包括了支持TCP/IP、 和FTP等协议的类库。 多线程支持多线程是程序同时执行多个任务的一种功能。多线程机制能够使应用程序并行执行多项任务,其同步机制保证了各线程对共享数据的正确操作。 良好的代码平安性运行时Runtime一
8、词强调以动态的角度看程序,研究程序运行时候的动态变化,也用运行时环境一词表达类似的含义。Java技术的很多工作是在运行时完成的,如加强代码平安性的校验操作。一般地,Java技术的运行环境执行如下三大任务: 加载代码由类加载器执行类加载器为程序的执行加载所需要的全部类尽可能而未必同时。 校验代码由字节码校验器执行Java代码在实际运行之前要经过几次测试。字节码校验器对程序代码进行四遍校验,这可以保证代码符合JVM标准并且不破坏系统的完整性。如检查伪造指针、违反对象访问权限或试图改变对象类型的非法代码。 执行代码由运行时的解释器执行 自动垃圾收集许多编程语言都允许在程序运行时动态分配内存块,分配内
9、存块的过程由于语言句法不同而有所变化,但总是要返回指向存储区起始位置的指针。在C,C+ 及其它一些语言中,程序员负责取消分配内存块。有时这是一件很困难的事情。因为程序员并不总是事先知道内存块应在何时被释放。当在系统中没有能够被分配的内存块时,可导致程序瘫痪,这种程序被称作具有内存漏洞。当分配内存块不再需要时,程序或运行环境应取消分配内存块。 垃圾收集就是将不再需要的已分配内存块回收。 在其它一般的语言中,取消分配是程序员的责任。 Java编程语言提供了一种系统级线程以跟踪存储区分配,来完成垃圾收集: 可检查和释放不再需要的存储块 可自动完成上述工作 可在JVM实现周期中,产生意想不到的变化 良
10、好的代码健壮性Java能够检查程序在编译和运行时的错误。类型检查能帮助用户检查出许多在开发早期出现的错误。同时很多集成开发工具IDE的出现使编译和运行Java程序更加容易,并且很多集成开发工具如Eclipse都是免费的。1.3 面向对象与面向过程的差异一种程序设计语言的产生,不仅是程序设计技术的改良,也包含了表达和认知思想的进步。以C语言为代表的局部早期语言,被称为面向过程的语言,不仅因为其程序设计的表达形式是以过程为根本元素,本质上更在于此时对计算机化的系统的理解的主导思想还是控制流或者数据流的,构成系统的要素是模块处理逻辑。面向对象语言的产生,是因为对于系统的理解或抽象到了更为高级的层次。
11、此时的认知思想不仅更接近于现实世界,其抽象程度也很高。因而,既有易懂的一方面,也有难懂的另一方面,就看理解的境界了。1.3.2 面向对象思想介绍面向对象思想,对现实世界采用直观的理解,计算机化时候采用深度的抽象,简单地可以总结如下:系统是由事物构成的,事物之间是有联系的,复杂的事物也是系统;系统与系统、系统与事物、事物与事物之间是有明确界限边界的;系统或事物的状态刻画可以用属性表示,属性一般是些简单的数据,如果复杂那就是事物了;不同的事物之间会具有共同的属性和行为,共同的极端情形就是完全包含。基于以上的认识,一个运行时动态的具体系统或事物,是由几个更小的具体事物构成极端的事物就是一个简单的属性
12、数据,它们是不断发生变化的。如果对事物这一概念进行了有效的抽象,那么问题就迎刃而解。例如:描述身高或姓名,各自只是一个简单的数据变量;那描述宿舍、班级,又要有许多个工程。1.4 面向对象程序设计中的主要概念和特征面向对象程序设计Object Oriented Programming,OOP语言中,为了进行更为高度的抽象,会引入一些现实世界中难于找到的概念,但对于一个程序语言来说确实很有价值的。以下暂时介绍的概念根本上都来源于对现实世界的抽象,要从程序设计的角色中去理解它们。面向对象程序设计使系统更易于理解,也使代码具有更好的重用性、可扩展性、易于管理和维护。1.4.1 主要概念1、类类是对一类
13、事物的抽象表示,其角色就相当于数据类型,当然可以算作复杂的数据类型。如学生、宿舍、班级。2、对象对象表示一个具体的事物,其角色就是变量,即一个复杂数据类型xx类的变量。如周瑜、张飞、瑜飞居,飞虎班。1.4.2 主要特征OOP语言有三个特征:封装、继承及多态性。1、封装2、继承父类也称为基类、超类,子类也称为导出类、派生类。3、多态多态表示一个类的某种行为存在多种实现版本。简单的情况是在一个类中,给出多种不同的实现,复杂的情况是在多个子类中各自给出不同的实现。*1.5 Java与C+的差异1.6本章小结习题1解释Java语言的三种平台。2解释支撑Java语言目标的三种主要技术自查资料完善。 第2
14、章 Java语言开发环境2.1 JDK2.1.1 JDK的简介可以从Sun公司的官方网站 :/java.sun 上下载Java开发工具包JDK。不必要求最新的版本,注意Java SE、Windows平台等信息。如:jdk-1_5_0_17-windows-i586-p.exe2.1.2 JDK的构成 2.1.3 JDK的使用1、安装2、设置环境变量环境变量应用程序运行时候需要的一些相对固定值的参数。CLASSPATH类库设置。新建,.; C:Javajdk1.5.0_17 libtools.jar。3、使用 创立程序可以使用最简单的文本编辑器,编写如下的程序,保存的名字必须是Hello.jav
15、a。package chap01; /当前类所属包名称public class Hello /当前类名 程序内容解释在以上的程序中,必须了解并逐渐熟悉的关键点: 类属性public,描述类的可见性,即类和其它类、包的关系; 注释格式/表示行注释,本行后面的内容为注释;/*/表示块注释,其中的内容为注释。以上的内容在一个Java应用程序中几乎是必需的。 一个包声明可选,没有表示顶级包,但有点麻烦; 任意数量的导入语句import,表示将要使用的外部Java类; 类和接口声明。该三要素必须以上述顺序出现。即,任何导入语句出现在所有类定义之前;如果使用包声明,那么包声明必须出现在类和导入语句之前。/
16、*文档信息描述*/ 程序编译 程序运行 d:切换当前分区; 2.2 IDE2.2.1 IDE简介IDE的含义是Java集成开发环境Integrated Development Environment,IDE。有很多IDE可供选择,典型的如JBuilder、Eclipse等。2.2.2 JBuilderJBuilder是使用Java开发的,支持J2EE技术的Java集成开发环境。但JBuilder不是完全免费的。最好先安装JDK。2.2.3 EclipseEclipse是基于Java的,开放源码的、可扩展的应用开发平台,它为编程人员提供了一流的Java集成开发环境Integrated Devel
17、opment Environment,IDE。是一个可以用于构建集成Web和应用程序的开发工具平台,其本身并不会提供大量的功能,而是通过插件来实现程序的快速开发功能。Eclipse是一个成熟的可扩展的体系结构。它为创立可扩展的开发环境提供了一个平台。这个平台允许任何人构建与环境或其他工具无缝集成的工具,而工具与Eclipse无缝集成的关键是插件。Eclipse还包括插件开发环境PDE,PDE主要针对那些希望扩展Eclipse的编程人员而设定的。这也正是Eclipse最具魅力的地方。通过不断的集成各种插件,Eclipse的功能也在不断的扩展,以便支持各种不同的应用。虽然Eclipse是针对Jav
18、a语言而设计开发的,但是它的用途并不局限于Java语言,通过安装不同的插件Eclipse还可以支持诸如C/C+、PHP、COBOL等编程语言。Eclipse利用Java语言写成,所以Eclipse可以支持跨平台操作,但是需要SWTStandard Widget Toolkit的支持,不过这已经不是什么大问题了,因为SWT已经被移植到许多常见的平台上,例如Windows、Linux、Solaris等多个操作系统,甚至可以应用到 或者PDA程序开发中。2.2.4 相关资源需要关注各家公司的官网、以及对应中文网站。还有如 这样的综合性技术网站。2.3 Project管理2.3.1 Project的含
19、义Project即工程或工程,几乎所有的IDE,使用时候必须先建立Project,才可以创立程序、编译程序、运行程序、修改程序、调试程序。如果有一种非常理想和完善的IDE工具,那么它可以管理一个Project的所有文档资源和生命周期。最好是从软件工程的角度去思考和理解Project。2.3.2 可行的Project组织模式学习程序设计语言,首先要学会管理自己的代码资源,使用合理的组织方式。影响实际工程开发中的工程组织方式有多种因素:软件生命周期的不同阶段、工程的功能结构、工程关联人员角色、文档分类等。平时管理好自己的劳动成果,要有代码资源的积累。2.4 本章小结习题2练习JDK的安装、编译并执行Hello或自己编写的应用程序。3改造Hello程序,自定义三个整型变量a、b、c并赋值,然后适当地处理保证a最大、c最小,再按从大到小顺序输出。4. 安装JBuilder,尝试创立工程、建立程序、编译、运行、修改、调试。
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1