java程序设计 (第2版)上ppt

上传人:tia****nde 文档编号:70777786 上传时间:2019-01-18 格式:PPT 页数:150 大小:1.03MB
返回 下载 相关 举报
java程序设计 (第2版)上ppt_第1页
第1页 / 共150页
java程序设计 (第2版)上ppt_第2页
第2页 / 共150页
java程序设计 (第2版)上ppt_第3页
第3页 / 共150页
java程序设计 (第2版)上ppt_第4页
第4页 / 共150页
java程序设计 (第2版)上ppt_第5页
第5页 / 共150页
点击查看更多>>
资源描述

《java程序设计 (第2版)上ppt》由会员分享,可在线阅读,更多相关《java程序设计 (第2版)上ppt(150页珍藏版)》请在金锄头文库上搜索。

1、2019年1月18日星期五,Java程序设计(第2版),Java程序设计 (第2版),2019年1月18日星期五,Java程序设计(第2版),第1章 Java程序初步 第2章 数据与数据运算 第3章 Java语句 第4章 类和对象 第5章 字符串和包装类 第6章 继承和嵌入类 第7章 接口和包 第8章 数组 第9章 例外处理 第10章 线程与同步 第11章 文件与输入输出 第12章 泛型和集合框架 第13章 GUI设计 第14章 Java applet,2019年1月18日星期五,Java程序设计(第2版),第1章 Java程序初步,4,一、Java语言的产生 时间:1991年 - 1995年

2、,1996年(Java1.0) 目标:消费类电子产品应用 - Web应用 名称:Oak - Java 人物:Jame Gosling Patrick Naughton Mike Sheridan Bill joy,1,5,二、对象与类 对象: 是对客观世界实体进行抽象形成的软件模型,由数据和方法两部分组成。 对象是数据与方法的封装体。 类: 是对一类相似对象的描述,这些对象具有相同的数据结构和方法代码。 在类定义中规定的实例对象封装界面上的信息被称为类的软件接口。,1,6,二、对象与类 消息: 程序的功能就是通过对象之间的相互作用完成的。对象之间的相互作用是通过消息(message)发生的。

3、一个消息由3部分组成: 接收消息的对象; 要执行的方法的名字; 方法需要的参数。 例:oneStudent.setName( “john” ),1,7,三、Java程序的基本结构 Java程序由一组类定义组成,类是程序的语法成分。 类定义包括对表示对象状态的变量的定义和对表示 对象行为的方法的定义。 对象的封装性主要是通过访问修饰符实现的。 Java应用程序的起始类是一个包含有main方法的特 殊的类。其格式: public static void main(String args). Java应用程序总是从起始类的main方法开始执行。,1,8,四、编译和运行Java程序 创建源程序文件:文

4、本文件,扩展名为.java。 编译Java程序:使用Java编译器(javac.exe),将源文件中的类或接口,翻译成字节码文件。例如: javac Example0101.java 运行Java程序:使用Java解释器(java.exe),解释并执行字节码文件。例如: java TestRectangle,源程序文件名,起始类类名,1,9,五、平台无关性 Java是一种半编译半解释的语言。 Java的平台无关性体现为字节代码的平台无关性。 Java平台无关性的关键 - Java虚拟机,即Java解释器。 Java API是一些class文件的集合 - Java类库。 核心API + Java

5、虚拟机 = JRE 或 Java平台。,1,10,六、Java词法结构(一) Java语言采用Unicode字符集,用2个字节编码。 词法分析将源代码分解为:词法符号、空白符号和注释。 空白符号包括空格、制表符、回车换行符等。 空白符号和注释:分隔词法符号、说明源代码。 词法分析的最终结果是产生词法符号流。,1,11,七、Java词法结构(二) 注释的格式: 格式1:/ 单行注释 格式2:/* 多行注释 */ 格式3:/* Java文档注释 */,1,12,八、Java词法结构(三)- 词法符号 关键字,如class、public、static、void、extends等。 标识符,被用作类、

6、对象、方法、变量等的名字。 文字,是程序正文中直接使用符号表示的数据。 运算符,系统内置的各种数据操作符号。 分隔符,包括:( )、 、 、; 、 , 、.。,1,13, 本章重点 理解面向对象的基本思想; 了解Java应用程序的基本结构; 掌握Java应用程序的编译和解释过程。,1,14,图1_1 实体到对象的抽象,返回,1,15,图1-2 对象封装示意图,返回,1,16,图1-3 类与对象关系示意图,返回,1,17,类定义举例,class Rectangle private int width, height; public void set(int w, int h) width = w

7、; height = h; public int getArea() return width * height; public int getPerimeter() return 2 * (width + height); ,返回,1,18,图1-6 Rectangle类的软件接口,class Rectangle public void set(int w, int h); / 设置矩形的宽与高 public int getArea(); / 计算矩形的面积 public int getPerimeter(); / 计算矩形的周长 ,返回,软件设计者与实现者之间的约定,1,19,图1-4 J

8、ava程序运行方式,返回,1,20,图1-5 Java虚拟机及Java平台无关性,返回,1,2019年1月18日星期五,Java程序设计(第2版),第2章 数据与数据运算,22,图2-1 Java数据类型,2,23,2.1 基本数据类型 2.2.1 分类及特性 1. 整型 byte 8位 -128-127 short 16位 int 32位 -2147483648-2147483647 long 64位 2. 浮点型 float 32位 double 64位,2,24,2.2.1 分类及特性 3. 字符型 char 16位 4. 布尔型 boolean true或false,2,25,2.1.

9、2 文字(literal)(一) 1. int型文字 十进制形式:125、-86。-2147483648 - 2147483647。 八进制形式:07、012。00 - 037777777777。 十六进制形式:0x2a、0XC1。0x0 - 0xffffffff。 2. long型文字 与int型文字的表示方法相似,区别是它以L或l结尾。 如:124l、0x7ffffffL。,2,26,2.1.2 文字(literal)(二) 3. double型文字 标准记数法:12.5、-12.、.56。 科学记数法:0.12E12、-12e-10。 4. float型文字 与double型文字的表示方

10、法相似,区别是它以F或f结尾。 如:24.3F、21.05e6f。 注: 无法用文字表达的浮点型值:负无穷、正无穷、NaN。,2,27,2.1.2 文字(literal)(三) 5. char型文字 用单引号括起来的一个unicode字符。 如:a、X、1、n、u0041 。 6. boolean型文字: true、false 7. String型文字 用双引号括起来的一串unicode字符。 如:“Hello World“、“、“、“two nlines“等。,2,28,2.1.3 变量 变量定义的基本格式: =,=; 局部变量在使用之前,必须显式初始化或赋值。 局部变量的作用域:定义处至所

11、在复合语句的结尾处。 在同一作用域内,不能有同名的局部变量。,2,29,2.2 基本类型转换 2.2.1 自动类型转换(一) 1. 赋值转换 byte short int long float double char型(无符号) int、long、float、double。 int型常量表达式(值合适) byte、short、char 2. 单目算术提升 在进行某些单目运算时,若操作数的类型是byte、short 或char型,则自动转换成int型;否则保持原有类型。,2,30,2.2 基本类型转换 2.2.1 自动类型转换(二) 3. 双目算术提升 在进行某些双目运算时,依次按以下规则对两个

12、操作数 自动进行类型转换: (1) 如果有一个操作数是double型的, 则把另一个转换成double型; (2) 否则,如有一个操作数是float型的,则 (3) 否则,如有一个操作数是long型的,则 (4) 否则,两个操作数都转换成int型。,2,31,2.2.2 强制类型转换(一) 语法格式:()expression 例:double c = 1.5; long d = (long)c; 除了布尔型,其他任何基本类型的值都可以 强制转换成其他的基本类型。 基本类型的值不能转换成引用类型;反之亦然。,2,32,2.2.2 强制类型转换(二) 宽整型 窄整型(n位):截取n位。 浮点型 整

13、型:丢弃小数位。 若值太大(或正无穷)、小(或负无穷),取最大或最小整型值。 若浮点值是NaN,则结果为零。 double型 float型: 若绝对值太小,则结果是正零或负零; 若绝对值太大,则结果是正无穷或负无穷。,2,33,2.3 运算符 2.3.1 算术运算符(一) 1. 双目运算符 包括+、-、*、/、%五种,在操作前要进行双目算术提升。 整数相除,结果是整数。除数不能为零。 整数取余(a%b)的结果是:a-(a/b)*b, 结果的正负号与a相同。 浮点数取余(x%y)的结果是:x-q*y, 这里q是 x/y的整数 部分,结果的正负号与x相同。,2,34,2.3.1 算术运算符(二)

14、2. 单目运算符 包括+、-、+、-四种,其中+、-在操作前要进行 单目算术提升。 +、-的操作数可以常量、变量或表达式,而+和 的操作数只能是变量。 +和既可以作为前置运算符,又可以作为后置运 算符。,2,35,2.3.1 算术运算符(三) 3. 说明 整型数的算术运算是二进制补码的模运算。如果一个值 超过了它所具有的类型的值域,结果是被模加减之后的值。 浮点数算术运算 infinity+infinity、infinity*infinity : infinity infinity-infinity、infinity/infinity : NaN infinity*0.0 : NaN 当有一个

15、操作数为NaN时,结果为NaN。,2,36,2.3.2 关系运算符 关系运算符包括:=、!=、=、=, 运算结果 为true或false。 =和!=可用于任何类型数据的比较,而其他关系运算符 只适合数值型(整型、浮点型、字符型)数据的比较。 若两个操作数是数值型,则操作前要进行双目算术提升。 正零和负零被考虑为相等。,2,37,2.3.3 逻辑运算符 逻辑运算符:&、|、!、&、|,操作数的类型为boolean型,返回值也是boolean型。 如果使用&和|运算符,而不是使用&和|运算符,那么只要左操作数已经得出整个表达式的值,系统将不再计算右操作数的值。如:x!=0&y/x10。,2,38,

16、2.3.4 位逻辑运算符 位逻辑运算符包括:&、|、,操作数是整型值(包 括字符型),运算结果为整型(int型或long型)。 运算前,运算符的操作数要进行单目算术提升,其他运算符的操作数要进行双目算术提升。,2,39,2.3.5 位移运算符 位移运算符包括: (右移):低位丢失、高位以符号位填充。 (无符号右移):低位丢失、高位以0填充。 运算前,单目算术提升会分别作用于左、右操作数。 若左操作数单目提升后为 int型,则右操作数的低五位起作用。 若左操作数单目提升后为long型,则右操作数的低六位起作用。,2,40,2.3.6 三目条件运算符 语法格式:op1 ? op2 : op3 op1必须是布尔型的,op2和op3必须是同类型的(算术 类型、布尔型、引用类型)。 若op2和op3都是基本算术类型: 1) 若两个操作

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号