Java SE程序设计基础教程(txt+pdf+epub+mobi电子书下载)


发布时间:2020-05-21 08:21:19

点击下载

作者:青岛东合信息技术有限公司,青岛海尔软件有限公司

出版社:电子工业出版社

格式: AZW3, DOCX, EPUB, MOBI, PDF, TXT

Java SE程序设计基础教程

Java SE程序设计基础教程试读:

前言

随着IT产业的迅猛发展,企业对应用型人才的需求越来越大。“全面贴近企业需求,无缝打造专业实用人才”是目前高校计算机专业教育的革新方向。

该系列教材是面向高等院校软件专业方向的标准化教材。教材研发充分结合软件企业的用人需求,经过了充分的调研和论证,并充分参照多所高校一线专家的意见,具有系统性、实用性等特点。旨在使读者在系统掌握软件开发知识的同时,着重培养其综合应用能力和解决问题的能力。

该系列教材具有如下几个特色。

1.以应用型人才为导向来培养学生

强调实践:本系列教材以应用型软件及外包人才为培养目标,在原有体制教育的基础上对课程进行了改革,强化“应用型”技术的学习。使学生在经过系统、完整的学习后能够达到如下要求:

■ 具备软件开发工作所需的理论知识和操作技能,能熟练地进行编码工作,并掌握软件开发过程的规范。

■ 具备一定的项目经验,包括代码的调试、文档编写、软件测试等内容。

■ 相当于一年的软件开发经验。

2.以实用技能为核心来组织教学

二八原则:遵循企业生产过程中的“二八原则”,即企业生产过程中 80%的时间在使用20%的核心技术,强调核心教学,即学生在学校用80%的学习时间来掌握企业中所用到的核心技术,从而保证对企业常用技术的掌握。教材内容精而专,同时配以知识拓展和拓展练习,以满足不同层次的教学和学习需求。

3.以新颖的教材架构来引导学习

自成体系:本系列教材采用的教材架构打破了传统的以知识为标准编写教材的方法,采用“全真案例”和“任务驱动”的组织模式。

■ 理论篇:即最小教学集,包含了“二八原则”中提到的常用技术,以任务驱动引导知识点的学习,所选任务不但典型、实用,而且具有很强的趣味性和可操作性,引导学生循序渐进地理解和掌握这些知识和技能,培养学生的逻辑思维能力,掌握利用开发语言进行程序设计的必备知识和技巧。

■ 实践篇:多点于一线,以完整的具体案例贯穿始终,力求使学生在动手实践的过程中,加深课程内容的理解,培养学生独立思考和解决问题的能力,并配备相关知识的拓展讲解和拓展练习,拓宽学生的知识面。

■ 结构灵活:本系列教材在内容设置上借鉴了软件开发中“低耦合高内聚”的设计理念,组织架构上遵循软件开发中的MVC理念,即在课程的实施过程中各高校可根据自身的实际情况(课程配比、时间安排、学生水平、教学情况等),在保证最小教学集的前提下可对整个课程体系进行横向(章节内容)、纵向(章节)裁剪。

4.提供全面的教辅产品来辅助教学实施

为充分体现“实境耦合”的教学模式,方便教学实施,另外还开发了可配套使用的项目实训教材和全套教辅产品,可供各院校选购:

项目篇:多线于一面,以辅助教材的形式,提供适应当前课程(及先行课程)的综合项目,遵循软件开发过程,进行讲解、分析、设计、指导,注重工作过程的系统性,培养学生解决实际问题的能力,是实施“实境”教学的关键环节。

立体配套:为适应教学模式和教学方法的改革,本系列教材提供完备的教辅产品,主要包括教学指导、实验指导、电子课件、习题集、实践案例等内容,并配以相应的网络教学资源。教学实施方面,提供全方位的解决方案(课程体系解决方案、实训解决方案、教师培训解决方案和就业指导解决方案等),以适应软件开发教学过程的特殊性。

本系列教材由青岛海尔软件有限公司和青岛东合信息技术有限公司共同研制,历时两年,参与编著的有张磊、丁春强、赵克玲、高峰、张旭平、孙更新、宾晟、胡芳、侯天超、邵峰晶、于忠清、韩敬海、曹宝香、崔文善、肖孟强等。本书的特约策划人为吕蕾女士。参与本书编写工作的还有:青岛农业大学、潍坊学院、青岛大学、山东科技大学、曲阜师范大学、济宁学院、中国海洋大学、青岛科技大学、济宁医学院等高校,期间得到了各合作院校专家及一线教师的大力支持和协作。在此技术丛书出版之际要特别感谢给予我们开发团队大力支持和帮助的领导及同事,感谢合作院校的师生给予我们的支持和鼓励,更要感谢开发团队每一位成员所付出的艰辛劳动。如有意见及建议,请发邮件至iTeacher@haiersoft.com.cn。@

iTeacher教研组

2010年7月理论篇第1章 Java概述

本章目标

■ 了解Java的历史

■ 了解Java的特点

■ 了解Java的体系结构

■ 了解Java程序类型

■ 熟悉Java运行机制

■ 熟悉JVM、JRE和JDK工具

■ 掌握Java程序编译与运行

■ 掌握Java程序中注释的分类和用法

学习导航任务描述【描述1.D.1】

在Windows环境下,使用命令行(字符界面)输出“Hello Java”。1.1 Java简介

Java是由Sun公司推出的Java程序设计语言和Java平台的总称,Java不仅是一种程序设计语言,也是一个完整的平台,有一个庞大的库,库中包含很多可重用的代码和提供安全性、可移植性,以及可自动垃圾回收等服务的执行环境。

Java语言的发展经历了如表1-1所示的几个阶段。表1-1 Java发展历程

注意 Java技术虽然最初由Sun公司开发,但是Java Community Process(JCP,一个由全世界的 Java 开发人员和获得许可的人员组成的开放性组织)可以对 Java 技术规范、参考实现和技术兼容性包进行开发和修订。虚拟机和类库的源代码都可以免费获取,但只能查阅,不能修改和再发布。1.2 Java的特点

Java的特点具体介绍如下。

■ 简单性:Java语言语法简单明了,与C或C++类似,Java提供了丰富的类库,另一方面Java摒弃了C++中容易引发程序错误的地方,如指针和内存管理。

■ 面向对象性:面向对象可以说是Java最重要的特性。Java语言的设计完全是面向对象的,它不支持类似C语言那样的面向过程的程序设计技术。Java支持静态和动态风格的代码继承及重用。

■ 分布式:Java语言支持Internet应用的开发,在基本的Java API中有一个网络应用编程接口(java.net),它提供了用于网络应用编程的类库。Java的RMI机制也是开发分布式应用的重要手段。

■ 健壮性:强类型机制、异常处理、垃圾的自动回收等是Java程序健壮性的重要保证。此外Java丢弃了C或C++中的指针,另外Java的安全检查机制使得Java更具健壮性。

■ 跨平台性:这种可移植性来源于体系结构的中立性,另外,Java 还严格规定了各个基本数据类型的长度。Java系统本身也具有很强的可移植性,Java编译器是用Java实现的,Java的运行环境是用ANSI C实现的。

■ 高性能:与那些解释型的高级脚本语言相比,Java 是高性能的。事实上,Java 的运行速度随着JIT(Just-In-Time)编译器技术的发展越来越接近于C++。

■ 多线程:Java 程序使用一个称为“多线程”的进程同时处理多项任务。Java 提供用于同步多个进程的主要解决方案。这种对线程的内置支持使交互式应用程序能在Internet上顺利运行。

■ 动态性:Java 语言的设计目标之一是适应于动态变化的环境。Java 程序需要的类能够动态地被载入到运行环境中,也可以通过网络来载入所需要的类。这有利于软件的升级。另外,Java中的类有一个运行时的表示,能进行运行时的类型检查。1.3 Java的体系结构

Java体系主要分为三大块:J2ME(Java 2 Micro Edition)、J2SE(Java 2 Standard Edition)、J2EE(Java2 Enterprise Edition)。在推出JDK 5.0版本后,Java体系名称分别改名为Java ME(Java Micro Edition)、Java SE(Java Standard Edition)和Java EE(Java Enterprise Edition)。也就是说,在新的名称中去掉了容易引起混淆的“2”。对于不同的版本,直接在不同的版本后面加上版本号,如Java SE 5、Java EE 5等。

下面分别对这三个平台作简要的介绍。

■ Java SE(Java Platform Standard Edition,Java平台标准版)

Java SE是Java技术的核心和基础。它是Java ME编程和Java EE编程的基础。它允许开发和部署在桌面、服务器、嵌入式环境和实时环境中使用的Java应用程序。Java SE包含支持Java Web服务开发的类,并为Java Platform Enterprise Edition(Java EE)提供基础。

■ Java EE(Java Platform Enterprise Edition,Java平台企业版)

Java EE是目前Java技术应用最广泛的部分,是在Java SE的基础上构建的,帮助开发和部署健壮、可移植、可伸缩且安全的服务器端Java应用程序。同时它提供Web服务、组件模型、管理和通信 API,可以用来实现企业级的面向服务体系结构(service-oriented architecture,SOA)和Web 2.0应用程序。

■ Java ME(Java Platform Micro Edition,Java平台微型版)

Java ME为在移动设备和嵌入式设备(比如手机、PDA、电视机顶盒和打印机)上运行的应用程序提供一个健壮且灵活的环境。Java ME包括灵活的用户界面、健壮的安全模型、许多内置的网络协议,以及对可以动态下载的联网和离线应用程序的丰富支持。

注意 本书以Java SE 5为主进行讲解,它相比J2SE有了较大的变化,这种变化会在后面的章节中说明。1.3.1 Java体系结构

使用Java进行开发,就是用Java编程语言编写代码,然后将代码编译为Java类文件,接着在JVM中执行类文件。JVM与核心类共同构成了Java平台,也称为JRE(Java Runtime Environment,Java运行时环境),该平台可以建立在任意操作系统上。Java体系结构如图1-1所示。图1-1 Java体系结构图

图1-1显示了Java不同功能模块之间的相互关系,以及它们与应用程序、操作系统之间的关系。1.3.2 Java程序类型

Java可以用来生成两类程序,分别是Application(Java应用程序)和Applet(Java小程序)。

这两类程序具体解释如下。

■ Application是指在计算机操作系统中运行的程序。用Java创建应用程序与其他任何计算机语言创建应用程序相似,这些应用程序可以基于GUI或命令行界面。

■ Applet是为在Internet上工作而特别创建的Java小程序,通过支持Java的浏览器运行,Applet可以使用任何Java开发工具创建,但必须被包含或嵌入到网页中,当网页显示在浏览器上后,Applet就被加载并执行。

Applet程序和Java应用程序的主要区别表现如下。

■ 运行方式不同:Applet 程序不能单独运行,必须依附于网页并嵌入其中,通过支持Java的浏览器来控制执行。Java应用程序是完整的程序,能够独立运行。

■ 运行工具不同:运行Applet程序的解释器不是独立的软件,而是嵌在浏览器中作为浏览器软件的一部分。Java应用程序被编译以后,用普通的Java解释器就可以使其边解释边执行,而Applet必须通过网络浏览器或者Applet Viewer才能执行。

■ 程序结构不同:每个Java应用程序必定含有一个并且仅含一个main方法,程序执行时,首先寻找main方法,并以此为入口点开始运行。含有main方法的类,通常被称为主类,也就是说,Java应用程序都含有一个主类。而Applet程序则没有含main方法的主类,这也正是Applet程序不能独立运行的原因。

■ 界面利用方式不同:Applet程序可以直接利用浏览器或Applet Viewer提供的图形用户界面,而Java应用程序则必须另外编写专用代码来创建自己的图形用户界面。

注意 Java应用程序可以设计成能进行各种操作的程序,包括读写文件的操作,而Applet对站点的磁盘文件不能进行读写操作,但是引入了 Applet 可以使得 Web 界面具有动态多媒体效果和可交互性。1.4 JVM、JRE和JDK

Java的三个重要概念是:JVM、JRE和JDK。1.4.1 JVM

JVM(Java Virtual Machine,Java虚拟机)是可运行Java字节码的虚拟计算机系统。可以把它看成一个微型操作系统,在它上面可以执行Java的字节码程序。它附着在具体的操作系统之上,其本身具有一套虚拟机指令,但它通常是在软件而不是在硬件上实现。JVM形成一个抽象层,将底层硬件平台、操作系统与编译过的代码联系起来。Java实现跨平台性,字节码具有通用的格式,只有通过 JVM 处理后才可以转换特定机器上的机器码,然后在特定的机器上运行。JVM与硬件、操作系统、字节码代码的关系简化图如图1-2所示。

Java编译器将Java源程序编译成Java字节码。Java虚拟机将在其内部创建一个运行时系统,运行Java字节码的工作由解释器来完成。JVM通常每次读取并执行一条Java语句。解释执行过程由三部分组成,分别是:代码的装载、代码的校验和代码的执行,如图 1-3所示。图1-2 JVM环境简化图图1-3 JVM运行过程

JVM的运行过程解释如下。

■ 加载.class文件。

由“类加载器”执行。如果这些类需要跨网络,类加载器将执行安全检查。

■ 校验字节码。

由“字节码校验器”执行,字节码校验器将校验代码格式和对象类型转换,并检查是否发生越权访问。

■ 执行代码。

JVM中可以包含一个JIT(just-in-time,即时)编译器。在执行Java程序以前,即时编译器会将字节码转换成机器码。如果用户系统中没有即时编译器,运行时解释器就会处理并执行字节码类,相反,如果系统中存在即时编译器,字节码类就会被转换成机器码并执行。

注意 Java虚拟机是一种用于计算设备的规范,可以由不同的厂商来实现。此外JVM根本不了解 Java 编程语言,它只能识别特定的二进制格式的类文件,该文件包含JVM 指令和单个类或接口的定义,即使其他编程语言编译后形成符合要求的文件,JVM也能执行。1.4.2 JRE与JDK

1.JRE

JRE全称Java Runtime Environment(Java运行时环境),是运行Java程序所必需的环境的集合,JRE包括Java虚拟机、Java平台核心类和支持文件。安装JRE是运行Java程序的必要步骤。

2.JDK

JDK全称Java Development Kit,是Sun Microsystems公司针对Java开发人员的产品。自从Java推出以来,JDK已经成为使用最广泛的Java开发工具包,一般称为Java SDK。JDK是整个Java的核心,包括了Java运行环境(JRE)、Java工具和Java基础的类库。

JDK包括如下内容。

■ Java虚拟机(JVM);

■ Java运行时环境(JRE);

■ Java编译器:javac,可以通过执行这个命令将Java源程序编译成可执行的字节代码class文件;

■ Java运行时解释器:java,Java可以通过该命令执行编译好的字节码class文件;

■ Java应用程序编程接口(API):JDK提供了大量的API。使用API来缩短开发时间,提高开发效率;

■ 其他工具及资源:如用于打包的jar。1.4.3 三者关系

JVM、JRE和JDK三者虽然是不同的概念,但相互之间又有着紧密的联系,如图1-4所示。图1-4 JVM、JRE和JDK的关系

JVM、JRE和JDK从范围上讲是从小到大的关系。在开发Java应用程序前,开发人员需要在计算机上安装JDK,同时会将JRE和JVM也安装到计算机中。

注意 关于JDK的安装与配置,参见实践1中实验指导部分“实践1.G.1”。1.5 第一个Java程序

Java源文件以.java为扩展名,一个Java应用程序可以有多个Java源文件。Java应用程序的基本结构如下。

■ 在完整的Java程序里,至少需要有一个类。因为Java是完全面向对象的语言,所以所有代码都是写在类型中的。

■ Java文件中可以有多个类,但只能有一个公共类,并且该公共类的类名与Java文件名相同。

■ 在Java中,main()方法是Java应用程序的入口方法,程序在运行的时候,第一个执行的方法是main()方法,每个独立的Java应用程序必须有main()方法才能运行。这个方法和其他的方法有很大的不同,比如方法的名字必须是 main(),方法必须是public static void类型的,方法必须接收一个字符串数组的参数等。

下述代码用于实现任务描述1.D.1,在Windows环境下,使用命令行(字符界面)输出“Hello Java”。【描述1.D.1】Hello.java

执行结果如下。

注意 代码区分大小写。另外,因为 Hello 类修饰符为 public,所以文件名要与类名一致,拼写和大小写要一致。

这是一个非常简单的Java应用程序,其代码说明如下。

■ 上面的程序定义了一个public类Hello,这个类的源程序文件名为Hello.java。

■ Hello类的范围由一对左、右大括号“{}”包含,public是Java的关键字,用来表示该类为公有,也就是在整个程序里都可以访问到它。

■ 类主体由许多语句组成,语句一般有两种类型——简单语句和复合语句,对简单语句来说,习惯约定一条语句占一行,语句必须以分号“;”来表示结束,而复合语句则是由左、右大括号括起来的一组简单语句的集合。对于复合语句在以后的章节中介绍。

■ Hello类中没有定义成员变量,但有一个成员方法或者称为方法,那就是main()方法。

■ System.out.println("Hello Java")语句的作用是程序运行时会在显示器上输出双引号内的文字。1.6 Java注释

与大多数程序设计语言一样,Java中的注释用来对程序中的代码做出解释。注释的内容在程序编译时,不产生目标码,因此,注释部分的有无对程序的执行结果不产生影响,但不要认为注释毫无用处。

注释增加代码的清晰度,尤其是在复杂的程序中,加注释可以增加程序的可读性,也有利于程序的修改、调试和交流,注释可以出现在程序中任何出现分隔符的地方。

试读结束[说明:试读内容隐藏了图片]

下载完整电子书


相关推荐

最新文章


© 2020 txtepub下载