1、CS&T Information Course2012Java语言程序设计语言程序设计计算机系计算机系 兰艳兰艳CS&T Information Course2012授课教师授课教师:姓名:姓名:兰艳兰艳教研室:教研室:计算机系网络工程教研室计算机系网络工程教研室办公地点:办公地点:C117办公室电话:办公室电话:84832262邮箱:邮箱:CS&T Information Course2012课程目标课程目标 专业能力目标专业能力目标:培养学生了解培养学生了解Java语言基础语语言基础语法,了解法,了解JavaAPI的用法,在软件开发运用的用法,在软件开发运用Java语言进行程序设计的能力。
2、语言进行程序设计的能力。素质能力目标:使学生养成遵循工程规范的习惯素质能力目标:使学生养成遵循工程规范的习惯和专业素养。和专业素养。工程能力目标:培养学生具备熟练运用工程能力目标:培养学生具备熟练运用Java开开发环境进行编码和调试的能力。以及在发环境进行编码和调试的能力。以及在JavaSE平台下的应用程序开发能力。平台下的应用程序开发能力。CS&T Information Course2012本次课的主要内容本次课的主要内容 学什么?(学什么?(What)为什么学?(为什么学?(Why)怎么学?(怎么学?(How)CS&T Information Course2012一、学什么(一、学什么(
3、What)?)?JavaC语言CS&T Information Course2012C与与Java的区别与联系的区别与联系 编程思想不同编程思想不同 C语言为面向过程语言为面向过程 Java为面向对象为面向对象 Java的跨平台性和安全性更好的跨平台性和安全性更好 C语言的执行效率更高语言的执行效率更高 C与与Java有各自不同的应用领域有各自不同的应用领域 C适于系统底层系统编程:硬件驱动、嵌入式等等适于系统底层系统编程:硬件驱动、嵌入式等等 Java适于上层应用开发:信息系统、网络应用等适于上层应用开发:信息系统、网络应用等CS&T Information Course2012课程内容课程
4、内容项目升级与改进项目升级与改进项目实现项目实现项目分析设计项目分析设计项目开发准备项目开发准备应用开发模块应用开发模块面向对象程序设计模块面向对象程序设计模块基础语法模块基础语法模块学生成绩管理系统课程内容应用领域JavaJava概述概述JavaJava基本语法基本语法类与对象类与对象继承继承接口接口异常处理异常处理常用类库常用类库GUIGUI程序设计程序设计I/OI/O多线程多线程网络网络CS&T Information Course2012商业网站应用商业网站应用 Java在商业网站的应用上是相当杰出。就以网络调查机构在全球的eBusiness Tech Ranking(电子商务科技评选
5、)中选出在eCommerce platform(电子商务平台)的第一名:Intershop,就是以Java程序的灵活、弹性而受到肯定。CS&T Information Course2012教育训练教育训练 在教育训练上,在教育训练上,Java也把也把我们的视野带到另一个境我们的视野带到另一个境界。不只是在国外,在中界。不只是在国外,在中国也有丰硕的果实呈现,国也有丰硕的果实呈现,就以台湾师大物理系的物就以台湾师大物理系的物理教学示范实验教室为例理教学示范实验教室为例 http:/www.phy.ntnu.edu.tw/demolab/index.htm便是一个绝佳示范。便是一个绝佳示范。CS&
6、T Information Course2012网络联机游戏网络联机游戏 Java在网络游戏上的表在网络游戏上的表现也算是可圈可点。小现也算是可圈可点。小而精悍的而精悍的Applet游戏程游戏程序通过网络下载后,速序通过网络下载后,速度极快,立即享用。度极快,立即享用。CS&T Information Course2012小型消费性电子商品应用小型消费性电子商品应用 Java平台针对小型消费电平台针对小型消费电子推出子推出Micro Edition。例例如在如在PDA及无线通信上,及无线通信上,Java已开始展现它的能耐。已开始展现它的能耐。随着随着Google公司公司Android的的迅猛发
7、展,迅猛发展,Java在手机应在手机应用领域再一次得到极大的用领域再一次得到极大的拓展。拓展。CS&T Information Course2012二、为什么学习二、为什么学习Java?对职业发展有重要意义对职业发展有重要意义 Java受到了全球所有主要计算机厂商的支持;成为受到了全球所有主要计算机厂商的支持;成为目目前使用最前使用最为广泛为广泛的的网络编程语言网络编程语言之一。之一。全球有全球有25亿亿Java器件运行着器件运行着Java,450多万多万Java开发者活跃在地开发者活跃在地球的每个角落,今天,球的每个角落,今天,Java运行在运行在7.08亿手机、亿手机、10亿亿智能卡和智能
8、卡和7亿亿PC机上,并为机上,并为28款可兼容的应用服务器款可兼容的应用服务器提供了功能强大的平台。提供了功能强大的平台。Java程序员认证目前全球最受重视、最受欢迎的程序程序员认证目前全球最受重视、最受欢迎的程序员资格认证之一。员资格认证之一。随着随着Java的广泛应用,国内对掌握的广泛应用,国内对掌握Java的专业技术人的专业技术人才也是逐年增加。才也是逐年增加。CS&T Information Course201211217CS&T Information Course201231162CS&T Information Course201224938CS&T Information Co
9、urse2012二、为什么学习二、为什么学习Java?对专业知识体系的建立有重要意义对专业知识体系的建立有重要意义JavaJava语言是最经典的面向对象程序设计语言语言是最经典的面向对象程序设计语言 触类旁通,对将来学习其他新技术很有帮助触类旁通,对将来学习其他新技术很有帮助 是本专业后续课程的重要基础是本专业后续课程的重要基础CS&T Information Course2012 Java Java面向对象程序设计面向对象程序设计高级程序设计基础高级程序设计基础(C C语言)语言)Web开发技术开发技术(Java)Web课程实践课程实践(Java)JavaEE5JavaEE5JavaJava
10、项目实训项目实训本课程在专业课程体系中的地位本课程在专业课程体系中的地位CS&T Information Course2012三、怎么学?(三、怎么学?(How)讨论讨论C语言学习之经验语言学习之经验 探索编程语言学习之道法探索编程语言学习之道法 掌握语言的环境,规则,元素三要素掌握语言的环境,规则,元素三要素 编写清晰简洁,能让其它程序员理解其意图的代码编写清晰简洁,能让其它程序员理解其意图的代码 从优秀的代码中学习领悟,使用优秀的代码从优秀的代码中学习领悟,使用优秀的代码 学习方法学习方法 多看多看 多想多想 多练多练CS&T Information Course2012考核方式考核方式
11、分值组成分值组成100分CS&T Information Course2012考核方式考核方式 期末考试闭卷,笔答(期末考试闭卷,笔答(50)三级项目以组为单位进行答辩(三级项目以组为单位进行答辩(30)项目完成度项目完成度 代码规范性代码规范性 英文文献翻译质量英文文献翻译质量 作业:电子版提交网址作业:电子版提交网址(20)http:/ 用户名:学号,初始密码:用户名:学号,初始密码:11CS&T Information Course20121、每堂课都需要带电脑和教材每堂课都需要带电脑和教材2、不用电脑时不用电脑时,必须将必须将电脑关闭电脑关闭,否则,否则1 1次扣次扣3 3分分3 3、
12、上课时必须把手机调到、上课时必须把手机调到振动振动、或者、或者关机关机4 4、请假要求在、请假要求在三天之内三天之内将假条交给任课教师。任将假条交给任课教师。任课教师修改考勤信息课教师修改考勤信息期限为一周期限为一周 课堂要求课堂要求CS&T Information Course2012考勤的具体说明 取消考试资格(一门课累计缺课取消考试资格(一门课累计缺课1/31/3学时,含旷学时,含旷课、事假、病假)课、事假、病假)处分(累计旷课处分(累计旷课1010学时,警告处分)学时,警告处分)平时成绩(迟到扣平时成绩(迟到扣3 3分,旷课扣分,旷课扣6 6分)分)评优、奖学金(迟到评优、奖学金(迟到
13、2 2次或旷课次或旷课1 1次取消资格)次取消资格)集体评优(迟到旷课累计集体评优(迟到旷课累计8 8人次以上取消资格)人次以上取消资格)CS&T Information Course2012教学参考资源教学参考资源1.http:/192.168.102.16/计算机系课件计算机系课件/2011-2012第第二学期二学期/Java语言程序设计语言程序设计/兰艳兰艳/2.参考书参考书:Java核心技术核心技术 机械工业出版社机械工业出版社 Java编程思想编程思想机械工业出版社机械工业出版社 Introduction to Java Programming 机械工业出版社机械工业出版社CS&T
14、Information Course2012先来一杯先来一杯Javal第第1章章 Java概述概述l主要内容:主要内容:Java 简史及简史及Java语言的特点语言的特点 Java开发工具包(开发工具包(JDK)Java程序的分类程序的分类 编译和运行一个编译和运行一个 Java application程序程序 编译和运行一个编译和运行一个 Java applet程序程序CS&T Information Course20121.1 Java简史1991James Gosling1995CS&T Information Course2012Java的发展史 1995.5 Sun公司正式发布公司正
15、式发布Java产品产品 1996.2 Java1.0版本诞生版本诞生 1997.2 升级为升级为1.1版本版本 1999.7 升级为升级为1.2版(改名为版(改名为Java2)2000.9 升级为升级为1.3版版 2001.7 升级为升级为1.4版版 并形成了并形成了Java体系体系 目前为目前为1.6版版Java 1Java 2CS&T Information Course2012J2SE(Java 2 Standard Edition)J2EE(Java 2 Enterprise Edition)J2ME(Java 2 Micro Edition)标准版标准版 适用于开发用户端程序适用于开
16、发用户端程序企业版企业版适用于开发服务器端程序适用于开发服务器端程序手持设备手持设备版版 适用于开发手机、无线设备程序适用于开发手机、无线设备程序Java技术的体系技术的体系CS&T Information Course2012项目一:用Java向世界问好 项目目标:通过项目的实施了解Java的特点,JDK的使用,Java应用程序和Java applet小程序的区别。掌握Java的运行原理,Java程序的结构,Java程序的编译和运行过程。项目任务:使用记事本分别编写第一个Java程序和Java applet小程序“Hello World!”;集成开发环境(Eclipse)编写Java程序“H
17、ello World!”。CS&T Information Course2012项目分析 1.要完成本项目首先应了解什么是Java?Java语言的特点和基本运行原理如何?2.然后还需要知道编写Java程序需要哪些开发工具?以及如何安装和配置这些工具?3.要实现这个项目,还需要知道Java程序的基本结构如何?如何编写Java源程序?4.最后还需要知道如何使用Java开发工具来编译和运行这个Java程序?CS&T Information Course2012技术准备 Java 技术包含两方面含义:技术包含两方面含义:语言和平台。语言和平台。Sun公司在公司在“Java白皮书白皮书”中对中对Java
18、的定义是:的定义是:A simple,object-oriented,distributed,interpreted,robust,secure,architecture-neutral,portable,high-performance,multi-threaded,and dynamic language.Java是一种具有简单的、面向对象的、分布式的、解是一种具有简单的、面向对象的、分布式的、解释型的、健壮的、安全的、体系结构中立的、可移植释型的、健壮的、安全的、体系结构中立的、可移植的、高性能的、多线程的、动态的语言。的、高性能的、多线程的、动态的语言。CS&T Information
19、 Course2012“一次编译,到处运行”的原理CS&T Information Course2012Java 程序的运行环境编译型源程序编译型源程序字节码程序字节码程序Java源程序源程序可执行程序可执行程序EXE裸机裸机操作系统操作系统解释器解释器编译编译连接连接编译编译执行执行解释解释执行执行.java.classCS&T Information Course2012JAVA平台简介Java平台包括两部分:Java 应用编程接口(Java API)Java虚拟机(Java Virtual Machine)CS&T Information Course2012JVM(Java Virtu
20、al Machine)在一台计算机上由软件或硬件模拟的计算机。在一台计算机上由软件或硬件模拟的计算机。Java虚拟机虚拟机(JVM)读取并处理经编译过的平台读取并处理经编译过的平台无关的字节码无关的字节码class文件文件。Java编译器针对编译器针对Java虚拟机产生虚拟机产生class文件,文件,因此是独立于平台的。因此是独立于平台的。Java解释器负责将解释器负责将Java虚拟机的代码在特定虚拟机的代码在特定的平台上运行。的平台上运行。CS&T Information Course2012Java的开发工具的开发工具JDK 什么是什么是JDK?JDKJDK:JavaJava开发工具开发工
21、具包(包(Java Java Development Development ToolkitToolkit),),JDKJDK是一是一个简单的命令行工具个简单的命令行工具集,包括软件库、编集,包括软件库、编译译JavaJava源代码的编译源代码的编译器、执行器、执行JavaJava字节码字节码的解释器、测试的解释器、测试Java Java AppletApplet的浏览器,以的浏览器,以及其他的实用工具。及其他的实用工具。JDK(Java Development Kit)JRE(Java RuntimeEnvironment)Java VM(JVM)JavaRuntimeClassesCS&T
22、 Information Course2012JDKJDK的安装与配置的安装与配置n下载下载JDK,最新版本和文档的站点:最新版本和文档的站点:n官方:官方:http:/n校内:校内:http:/192.168.102.16/计算机系计算机系课件课件/2011-2012第二学期第二学期/Java语言程序语言程序设计设计/Java环境环境CS&T Information Course2012JDKJDK的安装与配置的安装与配置n配置环境变量配置环境变量 n我的电脑我的电脑属性属性高级高级环境变量环境变量系统系统环境变量环境变量n变量名:变量名:pathn-用于指定操作系统的可执行指令的路径n变量
23、值:变量值:JDK安装目录安装目录binn用分号与原有的变量值区分开。用分号与原有的变量值区分开。CS&T Information Course2012JDKJDK的安装与配置的安装与配置CS&T Information Course2012JDK 提供的常用工具 javacjavac 是用来编译源代码的命令。是用来编译源代码的命令。java java 是用于执行类文件是用于执行类文件的命令。的命令。appletviewerappletviewer 命令允许在万维网浏览器的环命令允许在万维网浏览器的环境之外运行境之外运行 AppletApplet。CS&T Information Course
24、2012Java的集成开发环境的集成开发环境 集成开发环境(Integrated Development Environment,简称IDE),是为方便软件开发人员进行开发而设计的软件,一般针对某一编程语言开发,大多数为界面友好的可视化环境,一般整合源代码编辑器、调试器、编译器和资源编辑器。常见的JAVA集成开发环境 JBuilder、Eclipse、JCreator、Visual J.NETCS&T Information Course2012Eclipse简介 Eclipse是一种可扩展的开放源代码IDE。2001年11月,IBM公司捐出价值4,000万美元的源代码组建了Eclipse联盟
25、,并由该联盟负责这种工具的后续开发。Eclipse插件设计使得Eclipse具有开放式可扩充的结构,有许多种类的插件供使用。CS&T Information Course2012项目学做:开始简单项目学做:开始简单的的JavaJava程序编写程序编写Java程序分为两类:程序分为两类:应用程序应用程序(Java application)Application是独立程序,与其他高级语言编写的程序是独立程序,与其他高级语言编写的程序相同。相同。Application能够在任何具有能够在任何具有Java解释器的计算解释器的计算机上运行。机上运行。小程序(小程序(Java applet)Applet是
26、一种特殊的是一种特殊的Java程序,它可以在兼容程序,它可以在兼容Java的的Web浏览器中直接运行。浏览器中直接运行。CS&T Information Course2012Java Application程序基本结构import语句语句class public static void main(String args)主类名称主类名称方法体方法体CS&T Information Course2012第一个 Java 程序/这是名称为“HelloWorld.java”的简单程序 public class HelloWorld public static void main(String arg
27、s)System.out.println(“欢迎访问 Java 世界!“);单行注释单行注释定义类定义类Main函函数数在控制台上输出在控制台上输出CS&T Information Course2012在记事本编辑Java程序单击单击开始开始依次选择依次选择程序程序-附件附件-记事本记事本/这是名称为“HelloWorld.java”的简单程序import java.io.*;class HelloWorld public static void main(String args)System.out.println(“欢迎访问 Java 世界!“);CS&T Information Cour
28、se2012编译和运行单击单击开始开始依次选择依次选择程序程序-附件附件-命令提示符命令提示符进入程序所进入程序所保存的目录保存的目录输入命令编译输入命令编译HelloWorld输入命令执行输入命令执行HelloWorld 输出输出结果结果CS&T Information Course2012程序分析main(String args)voidstaticpublic 代码写在此处代码写在此处main:main:进入点的函数名称。一定要取名为进入点的函数名称。一定要取名为“main”main”(String(String argsargs):):传递給传递給 main main 的参数。的参数。
29、void:main void:main 的的返回返回值值。void void 代表不代表不返回返回任何值。任何值。static:static:宣告宣告 main main 是一个静态函数。是一个静态函数。public:public:宣告宣告 main main 函数大家都可以存取。函数大家都可以存取。:將您想執行的將您想執行的程序填程序填在此处。注意在此处。注意!Java Java 每行每行程序后程序后方都要以分方都要以分号结尾号结尾。CS&T Information Course2012Java程序的编写、编译和执行程序的编写、编译和执行 编写代码编写代码 可使用任何文本编辑软件编写,比如记
30、事本可使用任何文本编辑软件编写,比如记事本 源代码文件的扩展名为源代码文件的扩展名为.java 编译编译 使用使用JDK的编译器的编译器Javac.exe进行编译进行编译 编译后生成扩展名为编译后生成扩展名为.class的字节码的字节码 运行运行 使用使用JDK的解释器的解释器Java.exe运行运行CS&T Information Course2012CS&T Information Course2012编写Java源程序的注意事项 Java语言区分大小写,包括文件名语言区分大小写,包括文件名 源文件必须以源代码中源文件必须以源代码中public类命名,如果没类命名,如果没有有public类
31、可以可以任意命名(不推荐)。类可以可以任意命名(不推荐)。源文件扩展名必须为源文件扩展名必须为.java 不要漏掉任何一个该有分号(;)的地方。不要漏掉任何一个该有分号(;)的地方。大括号一定要左右成对,否则编译会错。大括号一定要左右成对,否则编译会错。每一成对大括号间程序代码称为区块每一成对大括号间程序代码称为区块(block)。CS&T Information Course2012编译、运行Java程序的注意事项 用用Javac编译源文件,如果有错误,必须修改编译源文件,如果有错误,必须修改错误后,重新编译,才能生成错误后,重新编译,才能生成.class文件文件 用用Java命令运行命令运
32、行Java程序,注意程序,注意Java命令后命令后的的classname不包括扩展名。不包括扩展名。CS&T Information Course2012一个简单的一个简单的 appletapplet 例例1.2import java.awt.*;import java.applet.Applet;public class SmileFace extends Applet /一个Applet public void paint(Graphics g)g.setColor(Color.yellow);/填充颜色g.fillOval(35,15,50,50);/head g.setColor(Co
33、lor.black);g.fillOval(50,30,5,5);/left eyeg.fillOval(65,30,5,5);/right eyeg.drawArc(50,40,20,10,190,160);/smileCS&T Information Course2012创建一个创建一个 HTML HTML 文件文件CS&T Information Course2012applet applet 浏览工具浏览工具appletviewer htmlfile.html例子例子:appletviewer WelcomeApplet.htmlCS&T Information Course2012a
34、pplication vs.applet不同点不同点Java applicationn由由Java解释器独立运行字节码解释器独立运行字节码n程序中有定义了程序中有定义了main()方法的主类方法的主类Java appletn不能独立运行,字节码必须嵌入不能独立运行,字节码必须嵌入HTML文档文档n程序中含有程序中含有java.applet.Applet 类的子类类的子类CS&T Information Course2012对对 appletapplet的限制的限制 不允许不允许applet 读写计算机的文件系统。读写计算机的文件系统。不允许不允许applet运行浏览器所在计算机上的任何运行浏览
35、器所在计算机上的任何程序。程序。除了存储除了存储applet的服务器之外,不允许的服务器之外,不允许applet建立用户计算机与任何其他计算机的连接。建立用户计算机与任何其他计算机的连接。CS&T Information Course2012Java API 文档2-1加载 API 文档的步骤:1.打开 Internet Explorer。2.键入下列 URL http:/ API Java API 文档文档是一种非常有用是一种非常有用的文档,描述许的文档,描述许多多 java java 的内置的内置功能,包含类、功能,包含类、包、接口等的帮包、接口等的帮助。助。CS&T Informatio
36、n Course2012Java API 文档2-2选择选择包包选择包中的选择包中的接口或类接口或类可查看相应帮可查看相应帮助助CS&T Information Course2012小练习 1.编写程序输出以下信息:*Welcome To Java!*2.使用applet在屏幕上打印一句话 hello,javaCS&T Information Course2012本章小结本章小结 了解了解Java及其发展历史及其发展历史 熟悉熟悉Java的开发和运行环境的开发和运行环境 掌握如何创建、编译、运行掌握如何创建、编译、运行Java程序程序 编写简单的编写简单的Java application和和Java applet程程序序