java 程序设计-Java论坛百度知道教学课题:第1章Java语言概述
全国高职高专计算机技能型人才培养系列规划教材Java软件学院张红梅我们为什么要学习Java?《JAVA语言程序设计》是计算机类课程的重要专业基础课,是JSP、JAVA项目设计等课程的前导课程,也是一门实践性很强的课程,既要掌握概念,又要动手编程,还要上机调试运行。对计算机专业来说是一门必修的课程,同时,这门课程也是“全国计算机水平考试”二级考试的主要语种之一。我们为什么要学习Java?Java目前是Internet上最流行的编程语言。2009年2月Tiobe编程语言排行榜发布,Java仍然位居首位,C语言次之。InternetWeek的调查发现,同样从事程序开发,在美国Java程序开发人员的平均年薪最高,基本年薪为7万美元;C++、C和COBOL程序开发人员的平均年薪为6.6万美元,而VisualBasic程序开发人员最低,约为5.8万美元。教材和教辅:自编教材CSDN论坛中国最有名的技术论坛,《程序员》杂志就是他们出版的,你可以在上面提出问题,马上就有人回答你,如果你觉得好,你可以给那人加分;Java研究组织上面有很多原创文章,高手很多;Java开发者资料比较全;Java论坛百度知道教学课题:第1章Java语言概述知道为什么要学习JavaJava的产生和应用熟悉Java的开发工具和开发环境理解Javaapplication与Javaapplet的联系与区别理解Java的工作机制及平台无关性教学目的:理解Java的工作机制教学难点:教学过程:引导(略)讲授新课教学重点:熟悉Java开发工具的使用Java语言概述Java的发展与应用Java的工作机制和基本特点Contents1.1Java的发展与应用Java来自于Sun公司的一个叫Green的项目。
最初是为小家电开发一个分布式代码系统,可以把E-mial发给电视机、电话等家用电器,对它们进行控制和信息交流,开始,准备采用C++,但C++太复杂,安全性差java 程序设计,最后开发了一种新的语言Oak(Java的前身)。由于这些智能化家用电器的市场需求当时没有预期的高,Sun放弃了该项计划。就在Oak几近夭折之时,Internet异常火爆起来。Sun看到了Oak在计算机网络上的广阔应用前景,他们改造了Oak,将Oak技术应用于Web上,并且开发出了HotJava的第一个版本,并于1995年5月发表,在产业界引起了巨大的轰动,Java的地位也随之得到肯定。又经过一年试用和改进,Java1.0(JDK1.0)终于在1996年初正式发布,从而引发了遍及全球、至今未衰的Java热潮。用Java可以编写嵌入在Web网页中运行的JavaApplet小程序,也可以编写独立运行的JavaApplication。Java是当今十分流行的网络编程语言。Java语言的出现被称作是一场软件革命。1.2Java的开发工具与开发环境JDK即JavaDevelopKit,Java开发工具包JDK由一个标准类库和一组建立、测试及建立文档的Java实用程序组成,其核心JavaAPI(应用程序接口)是一些预定义的类库,开发人员需要用这些类来实现Java语言的功能。
JavaAPI包括一些重要的语言结构以及基本图形、网络和文件的输入和输出(简记为I/O)。一般来说,JavaAPI的非I/O部分对于运行Java的所有平台是相同的,而I/O部分则仅在通用Java环境中实现。JRE即Javaruntimeenvironment,Java运行环境通常已包含在J2SDK中了,如果我们仅仅是为了运行JAVA程序,而不是从事java开发,我们可以直接下载JRE安装。JDK按其应用环境的不同,可分为:J2SE(Java标准版):开发桌面程序和小程序J2EE(Java企业版):开发企业级程序J2ME(Java微型版):开发手机、机顶盒程序许多Java专家认为,初学Java应当使用JDK开发环境。虽然JDK的界面不如一些可视化工具友好,许多编程人员通常都使用第三方的开发工具,但它却是各种开发环境的基础。因此,JDK仍被当作Java开发的重要工具。还可以使用JCreator或JBuilder来编辑、运行Java程序。JCreator的设计接近Windows界面风格,用户对它的界面比较熟悉。其最大特点是与我们机器中所装的JDK完美结合,是其它任何一款IDE所不能比拟的。
它是一种初学者很容易上手的java开发工具,缺点是只能进行简单的程序开发,不能进行企业J2EE的开发应用。JBuilder环境开发程序方便,它是纯的Java开发环境,适合企业的J2EE开发;缺点是往往一开始人们难于把握整个程序各部分之间的关系,对机器的硬件要求较高,比较吃内存,这时运行速度显得较慢。1.2.1JDK的下载与安装JDK下载网址:。在页面右边PopularDownloads栏中可看到最新版的JDK软件包,这里显示为“J2SE1.6.0JDK”(当前版本)。打开“J2SE1.6.0JDK”超链接java 程序设计,单击“WindowsOfflineInstallation,Multi-language”超链接,开始下载“jdk-6-windows-i586(1).exe”。运行下载的“jdk-6-windows-i586(1).exe”软件包,可安装JDK,系统默认的安装路径为:C:\ProgramFiles\Java,默认组件选择是全部安1.2.2JDK的环境配置在使用JDK以前,必须配置环境变量。下面以Windows2000/XP系统为例说明。右键单击“我的电脑”,选择“属性”,点击“高级”按钮,选择“环境变量”按钮,打开的对话框如图1.1所示,找到变量名“PATH”,选中后,点击“编辑”按钮,增加路径“C:\j2SDK1.4.2_10\bin”,如图1.2所示;新建变量名“CLASSPATH”,设置路径为“.;C:\J2SDK1.4.2_10\lib”,如图1.3所示。
保存设置后,就可以使用Java了。1.2.3JDK的主要开发工具JavaJDK包括了所有编译、运行Java程序所需要的工具:Java基本组件、库、Java编译器、Java解释器、小应用程序浏览器等。这些工具都在JavaJDK安装目录下的bin子目录里,以下为一些基本的工具:Java编译器将以“.java”为扩展名的Java源程序文件编译成类文件(扩展名:“.class”)。语法格式为:javac[选项]源程序文件名例如:javacHello.java java[选项] 例如:javaHello Applet浏览器用于运行JavaApplet程序。 4.Java反编译器:javap.exe javap[选项] 是用于当需要使用C语言扩展Java代码时创建C语言头文件。 javah[选项] 它是用于在Java源文件中生成基于标志的HTML文件。7.Java调试器:jdb.exe 它是Java环境的调试工具。1.3 Java程序的初步了解 Java程序的开发环境和运行环境准备好以 后,就可以开始编写Java程序了。要编写 Java 程序,需要有有文本编辑器。可以使 用操作系统提供的记事本作为编辑器,也 可选择EditPlus、UltraEdit等编辑软件,它 使用不同颜色显示Java 的关键字和类名, 简单好用。
1.3.1 编写Java源程序 Java程序分为应用程序(Application)和小程序 (Applet),下面分别进行介绍。 Java应用程序举例【例1.1】在屏幕上显示文字“欢迎你学习Java语 言!”的应用程序。 打开一个文本编辑器,输入以下代码: /*Hello.java*/ public class Hello{ //一个Application public static void main(String args[]){ System.out.println(” 欢迎你学习Java语言!”); Java小程序举例【例1.2】显示文字“欢迎你学习Java语言!”的小程序。 /*HelloApplet.java*/ import java.awt.Graphics; import java.applet.Applet; public class HelloApplet extends Applet{ //一个Applet public void paint(Graphics 注意:Application程序中含有main()方法,是程序 执行的入口,一般在本地或服务器上由 Java解释器解释执行;而Applet程序中没有 main()方法,由小程序查看器或含有Java解 释器的浏览器下载执行,这是Applet与 Application主要区别之一。
Java程序结构从上述例子可以看出,Java程序是由类构成的, 对于应用程序来说,必须在一个类中定义有main()方法,包含 main()方法的类是该应用程序的主类; 对于小程序来说,主类必须作为Applet类或JApplet类的子类。 Java源程序的书写规则: (1)文件命名规则 若Java文件包含一个public类,则该一定要以该类的名称来命 名文件。且Java对字母的大小写是敏感的,类名与程序文件名 的大小写也要一致。 源程序中定义的类名其首字母最好大写,以区别变量。 (2)类个数的规定 一个源文件中最多只有一个public类,其他类的个数不限。 (3)其他内容 package语句://包语句,0个或1个,必须放在文件开始 位置 import语句://导入语句,0个或多个,必须放在所有类定 义之前 interfaceDefinition://接口定义,0个或多个 public classDefinition://public类定义,0个或1个,必须 与文件同名 classDefinition://类定义,0个或多个 注意:在书写源程序时,最好采用分层次缩进方式书写,有 助于增加程序的可读性。
1.3.2 编译Java源程序 Java源程序编写后,要使用Java编译器(javac.exe)进 行编译,将Java源程序编译成可执行的程序代码。 Java源程序进行语法检查,如果出现问题就中止编译,显 示错误错误信息。语法检查通过后,生成可执行程序代 码——字节码,扩展名为class。 在命令提示符窗口或MS-DOS窗口进入源程序所在目录, 然后输入:javac+要编译的源程序文件名。 例如,要编译例1.1中的源程序文件Hello.java,输入命令: javac Hello.java,命令执行过程中,如果源程序没有错误, 则屏幕上没有输出,这时会在相应的目录中生成一个同名 字的class文件Hello.class;例1.2同样处理。 1.3.3 运行Java程序 对于编译生成的字节码文件(.class),要使 用Java解释器解释为本地的计算机代码来 执行。应用程序和小程序的运行方式不同。 运行应用程序使用Java解释器(java.exe)可将由应用程 序Hello.java编译生成的字节码文件 Hello.class解释为本地的计算机代码。 运行小程序Web浏览器或小程序查看器都有内置的解释器 (Java虚拟机),并负责提供Applet所需要的图形界 对于Applet小程序经编译生成的字节码文件 (.class ),由于Applet 中没有main() 方法作为 Java解释器的入口,它本身不能单独运行,必须嵌 入到HTML(Hyper Text Markup Language超文本 标记语言)文件中,借助于浏览器或小程序查看器 来解释执行,所以要首先编写创建同名字 的.html(或.htm)文件。
例如,对于字节码文件HelloApplet.class编写的 HTML文件如下:启动小程序 HelloApplet.clas s,显示区域为: 200*40 把该HTML文件以HelloApplet.html命名保存, 然后可利用小程序查看器或浏览器来解释执 在命令提示符窗口或MS-DOS窗口输入小程序查看器文件名和含有Applet字节码的HTML 文件名:appletviewer HelloApplet.html,按回 车键即可。 1.4.1 Java的工作机制 首先编写好源代码文件(.java) 然后经编译生成一种二进制的字节码文件(.class) 最后再通过Java解释器来解释执行编译生成的字节 虽然不同的平台环境需要有各自相应的解释器,但是任何一个平台上的解释器,对于一段Java程序的 字节码来说却是相同的,它们对Java字节码呈现完 全相同的面貌。也就是说,Java的运行机制是利用 解释器来隐藏网络上平台环境的差异性。由此可见, Java实现了二进制代码级的可移植性,在网络上实 现了跨平台的特性。 Java的解释器又称为“Java虚拟机(简称JVM, Java Virtual Machine)”,是在物理机上用软件 模拟出来的虚拟机,即为驻留于计算机内存的虚 拟计算机,实际上是一段负责解释执行Java字节 码的程序软件。
通常Java应用程序,JVM和硬件 具有这样的层次关系: Java应用程序 硬件中间层的JVM,相当于一层软件屏蔽,将底层硬件的不一 致屏蔽掉,向上层提供了相同的java运行环境。Java的可 移植性就是通过JVM实现的。 JVM能够从字节码流中读取指令并解释指令的含义,每条 指令都含有一个特殊的操作码,JVM能够识别并执行它。 从这个意义上说,Java可以被称为是一种“解释型”的高 级语言。高级语言的解释器(或称解释程序)对程序边解 释边执行,执行效率低,因此,与在操作系统下运行的C 或C++等“编译型”语言程序相比,运行Java程序要慢得 多,这是Java语言的一个不足。 Java解释器作为一个独立的应用程序,在操作系统下直接 启动,可以解释执行Java应用程序;如果Java解释器包含 在一个浏览器内部,则该浏览器能够下载并解释执行Java 小程序。 为什么要用JAVA?(1.4 JAVA的特点)简单的 面向对象的 分布式的 健壮的 安全的 解释的 与平台无关的 多线程的 动态的语言 为什么要用JAVA?(JAVA的特点) 简单的 Java的风格类似与C++,可以说Java是C及 C++的一个变种,因此学习C语言后,可以 很快地掌握Java编程技术。
Java摒弃了C中容易引发程序错误的一些 特性,如指针、结构、枚举等。 Java提供了丰富的类库,可以帮助我们很 方便的开发Java程序。 为什么要用JAVA?(JAVA的特点) 面向对象的 面向对象是JAVA最重要的特性,支持继承、重载、 多态等面向对象的特性。 健壮的 JAVA提供了类型检查机制和垃圾内存回收机制。 分布式的 JAVA提供了大量的系统模块支持基于TCP/IP协 议的编程,使Java应用程序可以像访问本地文件 系统那样通过URL 访问远程对象,非常适合于分 布式系统的开发。 为什么要用JAVA?(JAVA的特点) 安全的 JAVA的安全性从两个方面得到保证: 一方面,JAVA删除了指针和释放内存等功 能,避免了非法内存操作。 另一方面,通过JAVA的安全体系架构来确 保JAVA代码的安全性。当在本地执行从网 上下载的JAVA代码是,Java的安全架构能 够确保恶意的代码不能随意访问我们本地 计算机的资源,如:删除文件,访问本地 网络资源等操作都是被禁止的。 为什么要用JAVA?(JAVA的特点) 解释的 JAVA代码是解释执行的,我们使用JAVA 编译器将JAVA代码编译成字节码,这是一 种中间代码,然后由JAVA解释器解释执行。
而C程序是编译执行的,C程序代码被编译 为本地机器指令,然后执行。 与平台无关的 JAVA源程序被编译成一种与机器无关的字 节码格式,在JAVA虚拟机上运行。 为什么要用JAVA?(JAVA的特点) 多线程的 JAVA的一个重要特性就是在语言级支持多 线程的程序设计。多线程就好像我们做一 张桌子,如果你一个人完成这张桌子,就 是单线程,所有的工作都要你一个人完成; 如果有5个人来做桌子,就是多线程,1个 人做桌面,另外4个人分别做桌子腿。那么 这两种方式效率的高低,相信大家都能区 分出来。 为什么要用JAVA?(JAVA的特点) 动态的 JAVA的动态性是其面向对象设计方法的扩 展。它允许程序动态地装入运行过程中所 需要的类,甚至可以通过网络进行装载。 本章小结 本章主要介绍了Java的发展、应用与主 要特点,简单说明了Java开发工具Java JDK软件包的下载和开发环境JDK的设置 方法,概括介绍了Java程序的结构及其 运行方法。 重点掌握java程序的结构及在JDK运行环 境中的执行过程。 作业: P11 2,3 全国高职高专计算机技能型人才培养系列规划教材