




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、Java语言程序设计清华大学出版社第1章 Java 语言概述(1)-序论第1页,共86页。Java语言程序设计目录第 1 章 Java 语言概述第 2 章 java语言基础第 3 章 面向对象程序设计基础第 4 章 图形用户界面设计第 5 章 Java swing基础第 6 章 Java图形与数字图像处理第7章 多线程与异常处理 第8章输入输出流第9章网络通信第10章Java数据库连接 第11章常见数据结构及算法分析第12章J2ME程序设计基础第2页,共86页。一、Java是什么Java是面向对象的编程语言。第3页,共86页。Java的故事Sun Microsystems, Inc. 第4页,
2、共86页。印度橡树1991.4 Sun开发新的语言,James Gosling取名时看到窗口橡树,即命名为Oak。后改名为Java。第5页,共86页。1995年5月23日正式发布第6页,共86页。二、为什么是Java简单安全跨平台 (一次编译,到处运行)多任务线程内存管理与资源回收第7页,共86页。Java程序与虚拟机第8页,共86页。Java平台的版本什么是JDK(Java Development Kit) 开发工具,Javac及基础核心类运行环境, java及基础核心类目前Java平台有三种的版本: J2EE(Java2PlatformEnterpriseEdition) J2SE(Jav
3、a2PlatformStandEdition) J2ME(Java2PlatformMicroEdition)第9页,共86页。Applet Applet是一种可嵌入于Web文件中的一种小型程序。通常其程序因网络传输速度关系都很短小。第10页,共86页。Application Application(应用程序)乃是在命令列环境执行的程序。程序中由main()方法作为程序起点,执行顺序由程序本身来控制。第11页,共86页。Servlets Servlets是应用在服务器端的应用程序,可提供各式服务器服务。例如数据查询或动态产生聊天室,月历等。第12页,共86页。示 例文件管理器第13页,共86页
4、。三、Java的未来无线宽带服务:J2ME大势所趋:无线宽带 短信息、股票查询、网络游戏、气象服务.第14页,共86页。J2EE构建信息管理系统波音公司信息管理系统通用电气公司信息管理系统世界500强跨国企业一半以上国内:华为、联通、网通等移动电子政务服务第15页,共86页。火星探测器“勇气”号,用java技术实现控制。第16页,共86页。学习要求:多练习、多编写程序。“熟能生巧”,通过实践真正体验到程序设计中的乐趣和成功的喜悦,增强学习的信心。第17页,共86页。下课休息第18页,共86页。Java语言程序设计清华大学出版社第1章 Java 语言概述(2)第19页,共86页。主要内容1、ja
5、va的安装2、开发过程3、程序的编译及运行第20页,共86页。1.4 Java程序的开发过程第21页,共86页。1、java的安装bin目录是一些执行文件,Java的编译器、解释器和工具。demo目录是各种演示的实例。lib目录保存库文件。include目录下是Win32子目录,都是本地方法文件。jre目录是Java程序运行环境的根目录。 图1.2Java SDK安装后的目录结构 第22页,共86页。2、设置环境变量在Window 2000下,从“我的电脑”(右键)高级环境变量,再在其中选择“系统变量”的“新建”。第23页,共86页。1.4.2 java程序开发过程图1.5 Java程序的开发
6、过程第24页,共86页。1、建立Java 源文件 建立一个文本文档,包括有符合Java规范的语句。开发一个Java程序必须遵循下述基本原则:(1)Java区别大小写,即Public 和public是不同的标识符。(2)用花括号将多个语句组合在一起,语句之间必须用分号隔开。第25页,共86页。(3)一个可执行的应用程序必须包含下述基本框架:public class Test public static void main(String args) ; /程序代码 (4)用文件名Test.java保存起来,即文件名必须与Public class 后的类名相同(包括相同的大小写),并使用java作为
7、扩展名。第26页,共86页。例:Test.java图1.6用记事本输入Java语句 第27页,共86页。2、编译源文件 在命令控制台窗口中,输入编译命令javac(如图1.8所示): javac Test.java 按回车键确认编译,如果编译成功,编译器就在包含Test.java文件所在的同一个目录下建立一个Test.class字节码文件。 第28页,共86页。3、执行字节码文件 Java编译器并不直接产生一个执行代码,因而不能直接在操作系统环境下执行。 通过Java解释器命令: java Test 第29页,共86页。【例1-1】1. /* 一个Java换行程序 */2. class Exa
8、mple1_13. 4. public static void main(String args) 5. 6.System.out.println(Welcomen to nJava !);7. 8. 图1.12 运行结果 第30页,共86页。程序说明 第31页,共86页。【例1-2】简单的提示框程序 import javax.swing.JOptionPane;class Example1_2 public static void main(String args) JOptionPane.showMessageDialog( null, Welconen to nJava !); Syst
9、em.exit(0); /退出程序 第32页,共86页。图1.14 提示框程序的运行结果程序中: import javax.swing.JOptionPane;是一条装载类库的import语句。import语句为编译器指定路径找到程序要使用的类。 第33页,共86页。关于注释语句程序第9行的“/”号为注释语句。注释是程序中的说明性文字,是程序的非执行部分。它的作用是为程序添加说明,增加程序的可读性。Java语言使用3种方式对程序进行注释:“/”符号,它表示从“/”符号开始到此行的末尾位置都作为注释。“/* */ ” 符号,它表示从“/*”开始到“*/ ”结束的部分都作为注释部分,可以是多行注释
10、。“/* */ ” 符号,它表示从“/*”开始到“*/ ”结束的部分都作为注释部分,可以是多行注释。第34页,共86页。Applet程序(小应用程序)1. /* 一个简单的Java小应用程序 */2. import java.applet.Applet; 3. import java.awt.Graphics; 4. public class Example1_3 extends Applet5. 6. String s;7. public void init() 8. 9. s=我对Java很痴迷。; 10. 11. public void paint(Graphics g)12. 13.
11、g.drawString(s,25,25); /在第25行25列位置显示字符串内容14. 15. 第35页,共86页。【程序说明】 在程序第2行:import java.applet.Applet; 表明引用了Applet类,Applet类是所有的java Applet的父类。由于有了这条引用,才可以有第4行: public class Example1_3 extends Applet 这表明我们编写的类Example1_3是Applet类的子类。注意,Java Applet类必须是public的,也就是说,类名前面的Public不能少。第36页,共86页。程序第3行:import java
12、.awt.Graphics; 表明引用了Graphics类,在显示输出时,需要用到类Graphics的对象; 第37页,共86页。运行小应用程序编译后的Applet程序必须由浏览器来执行,因此我们要编写一个超文本文件(含有applet标记的Web页),通知浏览器来运行这个Java Applet程序。使用记事本之类的文本编辑工具,编写一个HTML文件如下: 第38页,共86页。图1.15 在浏览器中运行Java Applet程序 第39页,共86页。习题一 1、试述Java开发环境的建立过程。2、如何编写和运行Java应用程序? 3、为什么要为程序添加注释,在Java程序中如何为程序添加注释?4
13、、Java工具集中的javac、java、appletviewer各有什么作用?5、如何建立和运行JavaApplet程序? 第40页,共86页。Java语言程序设计清华大学出版社第2章 java基础第41页,共86页。本章内容提要1、基本数据类型2、表达式和运算符3、程序控制语句4、数组5、向量(简介)6、字符串第42页,共86页。2.1数据类型程序=算法+数据结构+程序设计方法+语言工具和环境。之所以有数据类型,就是因为计算机存储不同数据类型的方式和空间不同。 第43页,共86页。数据类型分类 Java定义了8个基本数据类型:字节型,短整型,整型,长整型,字符型,浮点型,双精度型,布尔型。
14、它们分为4组: 整数型(byte,short,int,long) 浮点数型(float,double)字符型(char)布尔型(boolean)第44页,共86页。数据类型的分类第45页,共86页。【例2-1】计算二个整数的和: class Example2_1 public static void main(String args) int x,y,sum ; /变量声明 x = 3 ; y = 5 ; sum =x+y ; /求和 System.out.println(二数之和为: + sum) ; 在Java中,使用变量要遵守“先声明后使用”的原则。 第46页,共86页。类型转换自动转换
15、需要满足两个条件:1、类型相容; 2、目标数据类型比原数据类型分配的内存空间大(即由低到高)。强制转换发生在相容数据类型之间(即精度由高到低) 。语法形式: (目标类型)值基本数据类型按精度从“低”到“高”的顺序为:byte short int long float double第47页,共86页。2.2 表达式和运算符表达式是由运算符、操作数和方法调用按照语言的语法构造而成的符号序列。表达式可用于计算一个公式,为变量赋值以及帮助控制程序执行流程。第48页,共86页。2.2.1 表达式与运算符 只有一个运算对象的运算符称为一元运算符。例如+x是一个一元运算符,它是对运算对象x自增加1。 +x,
16、-x: 使用X之前,先使X的值加1(或减1);X+,X-:使用X之后,再使X的值加1(或减1) 设X=5 则 Y=+X Y的值为6; Y=X+ Y的值为5,而X为6。第49页,共86页。我们可以将运算符分成以下几类:算术运算符;关系和条件运算符;移位和逻辑运算符;赋值运算符;其他的运算符。第50页,共86页。2.2.2 算术运算符Java 语言支持所有的浮点型和整型数进行各种算术运算。这些运算符为+(加)、-(减)、*(乘)、/(除)以及%(取模)。 算术运算符的使用基本上与加减乘除一样,也是先乘除后加减,必要时加上括号表示运算的先后顺序。例如这个程序代码会在命令行模式下显示: System.
17、out.println(1 + 2 * 3); 第51页,共86页。2.2.3 关系与逻辑运算符运算符运算用法返回true的情况大于x1 x2x1大于x2=不小于x1 = x2x1 大于或等于x2小于x1 x2x1小于 x2=不大于x1 右移x n将x各位右移n位,左边按符号补0或补111110101左移x 无符号右移x n将x右移n位(无符号的) ,左边补000110101&与x & y将x,y按位与操作01010000|或x | y将x,y按位或操作11011111异或x y将x,y按位异或操作10001111位反 x将x各比特位按位取反00101001第55页,共86页。右移运算符“”将
18、一个数的二进制位序列右移若干位,移出右端的低位被舍弃,最高位则移入原来高位的值。例如:a=00110111,则 a2 = 00001101 b=11010011,则 b2 = 11110100左移运算符“”将一个数的二进制位序列左移若干位,高位左移后溢出舍弃,不起作用。第56页,共86页。当移位运算符通过对运算对象左移位或者右移位来对数据执行位操作时,一个数每左移1位,相当于这个数乘以2,每右移1位,相当于除以2。例如,设x=8,则x 1表示左移1位,相当于作x21的运算,其结果为16。 x 1表示右移1位,相当于作x21的运算,其结果为4,x 2表示右移2位,相当于作x22的运算,其结果为2
19、。一般地:x n表示右移n位,相当于作x2n的运算。逻辑右移运算符“”将一个数的二进制位右移若干位,右端移出的低位被舍弃,最高位也是补0,这点与“”不同。当运算对象为数字的时候,“&”运算符为每一个运算对象的每位执行按位与功能。它在两个运算对象的对应位为1时结果才为1,反之结果都为0。即:0 & 0 = 0 、0 & 1 = 0 、1 & 0 = 0 、1 & 1 = 1 第57页,共86页。“ | ”运算符执行或操作。当两个操作对象都是数字的时候,或操作只要有一个运算对象为1结果就为1。即:0 | 0 = 0、 0 | 1 = 1、1 | 0 = 1、1 | 1 = 1“”运算符执行异或操作
20、。异或是指当运算对象不同时结果才为1,否则结果为0。即:0 0 = 0、0 1 = 1、1 0 = 1、1 1 = 0第58页,共86页。如果c = a b那么a = c b即用同一个数b对数a进行二次异或运算的结果仍是数a。第59页,共86页。2.3程序控制语句语句分为五类:1、方法调用语句;2、表达式语句;3、复合语句;4、控制语句;5、package和import语句。第60页,共86页。2.3.2 控制语句通常语句在程序中都是按先后顺序执行,控制语句用于改变程序执行的顺序。Java的控制语句有:if-else语句switch语句while do-while语句for语句跳转语句异常处理
21、语句第61页,共86页。2.3.3if条件语句1、if 语句的一般形式 if(表达式) 若干语句; 第62页,共86页。2.3.4 switch语句switch语句是一个多分支选择语句,也叫开关语句。它可以根据一个整型表达式有条件地选择一个语句执行。 switch(变量名称或表达式) case 符合数字或字符: 语句块1; break; case 符合数字或字符: 语句块2; break; default: 语句块3; 第63页,共86页。switch语句首先计算条件表达式的值,如果表达式的值和某个case后面的常量数值相同,就执行该case里的若干条语句,直到break语句为止。若没有一个常
22、量与表达式的值相同,则执行default后面的若干条语句。default是可有可无的,如果它不存在,并且所有的常量数值都和表达式的值不相同,那么switch语句就不进行任何处理。第64页,共86页。2.3.5 循环语句1、for循环语句for循环语句的语法结构如下: for(初始条件;终止条件;增量) 循环体; 第65页,共86页。图2.7 循环语句的执行过程第66页,共86页。2.4 数组数组是一组相同类型变量的集合,可以使用共同的名字引用它。 第67页,共86页。2.4.1 创建和使用数组 1、声明数组 (1)声明一维数组的格式: 数组元素的类型 数组的名字;(2)声明二维数组的格式: 数
23、组元素的类型 数组的名字;第68页,共86页。2、 创建数组 一般来说,当创建数组的时候,使用 new 操作符,后面跟着数组元素的数据结构。然后将元素的数目用方括号括起来,其格式如下所示: 数组名字= new 数组元素的类型数组元素的个数 ;例: a = new int10; 第69页,共86页。3、数组元素的使用数组可以通过下标访问自己的元素:int a =new int10; for(int i=0;ia.length;i+) ai=i; System.out.print(ai+); 第70页,共86页。4、确定数组的大小为了获得数组的大小,可以使用下面的代码: 数组名.length; 注
24、意,不能在length后面加一个圆括号( ),否则造成错误,因为length不是一个方法。 第71页,共86页。2.4.2 多维数组的应用 在Java中,多维数组(multidimensional arrays)是由若干行和若干列组成数组。在人们工作生活与学习中,要使用二维表格、矩阵、行列式等,都可以表示成多维数组。例如: int D = new int34; 第72页,共86页。该语句声明并创建了一个3行4列的数组D。这个数组在逻辑上可以表示成一个int类型的矩阵。 也就是说,这个数组在逻辑上可以表示为: D00 D01 D02 D03 D10 D11 D12 D13 D20 D21 D22
25、 D23第73页,共86页。2.5 向量1、向量(Vector) 向量(Vector)是Java.util包(java.util包是专门保存各种常用工具类的类库)提供的一个工具类。它有类似数组的顺序存储的数据结构,但是具有比数组更强大的功能。 第74页,共86页。2、创建向量对象Vector类有三个构造函数:(1) Vector(): 构造一个空向量。 (2) Vector(int i): 用指定的初始化容量构造一个空向量。 (3) Vector(int i, int j): 用指定的初始化容量i和容量增量j构造一个空向量。 下面的语句就利用构造函数创建了一个向量序列: Vector v1 =
26、 new Vector(100,10);第75页,共86页。向量的常用方法 方 法说 明addElement(Object obj)在向量尾部添加指定组件,并且长度加一。 capacity()返回该向量的当前容量。copyInto(ObjectanArray)把该向量的元素复制到指定数组中。elementAt(int index)返回指定下标处的组件。firstElement()返回该向量的第一个元素。lastElement()返回向量的最后一个元素。size()返回该向量的元素数。insertElementAt(Object obj,int index)在指定的 index 处插入作为该向量
27、元素的指定对象。第76页,共86页。 2.6 字符串的简单介绍 1、字符串声明与创建下面是声明并创建字符串的语句:String str ; str = this is a Stirng. ; 也可以将上面二条语句合并为一条语句: String str = this is a String. ; 第77页,共86页。2、字符串操作方法说明length()取得字符串的字符长度equals()判断两个字符串中的字符是否等于toLowerCase()转换字符串中的英文字符为小写toUpperCase()转换字符串中的英文字符为大写第78页,共86页。(1)求字符串的长度例:String str1 =
28、Hello! ;String str2 = 你身体好吗?;System.out.println(str1.length();System.out.println(str2.length(); 第79页,共86页。(2)比较两个字符串 String类中有三个方法可以比较两个字符串是否相同。public int compareTo(String str);public boolean equals(Object obj);public boolean equalsIgnoreCase(String str); 这里需要特别说明,比较二个数值x、y是否相等,我们使用x=y。而比较二个字符串相等则不能使用“=”来比较。请看下面的程序段:
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 详细讲解2024年CPMM知识点试题及答案
- 高职单招职业适应性测试模拟试题及答案(四)
- 诗词的情感共鸣探讨试题及答案
- 统编版五年级语文下册《语文园地六》精美课件
- 2025年报名机构与学员合同模板
- 2025年多功能抑尘车合作协议书
- 2025年植物原药合作协议书
- 离婚协议书一儿一女的(2025年版)
- 2025年摩托车协议过户 模板
- 2025年度茶叶加工厂租赁与茶叶包装设计合作合同
- 新人教版七年级数学下第一二单元检测试题
- 化工热力学答案-冯新-宣爱国-课后总习题答案详解
- 拉斐尔课件完整版
- EIM Book 1 Unit 8 We're going on holiday单元知识要点
- 机加工日语词汇
- 核舟记测模拟试题及答案
- MySQL中文参考手册MySQL学习教程
- 集群企业住所托管服务协议书
- YS/T 1028.3-2015磷酸铁锂化学分析方法第3部分:磷量的测定磷钼酸喹啉称量法
- GB/T 39305-2020再生水水质氟、氯、亚硝酸根、硝酸根、硫酸根的测定离子色谱法
- GB/T 26159-2010中国未成年人手部尺寸分型
评论
0/150
提交评论