Java面向对象程序设计 教学课件 ppt 作者 梁燕来 程裕强 第2章 面向过程编程

上传人:E**** 文档编号:89369530 上传时间:2019-05-24 格式:PPT 页数:111 大小:738KB
返回 下载 相关 举报
Java面向对象程序设计 教学课件 ppt 作者  梁燕来 程裕强 第2章 面向过程编程_第1页
第1页 / 共111页
Java面向对象程序设计 教学课件 ppt 作者  梁燕来 程裕强 第2章 面向过程编程_第2页
第2页 / 共111页
Java面向对象程序设计 教学课件 ppt 作者  梁燕来 程裕强 第2章 面向过程编程_第3页
第3页 / 共111页
Java面向对象程序设计 教学课件 ppt 作者  梁燕来 程裕强 第2章 面向过程编程_第4页
第4页 / 共111页
Java面向对象程序设计 教学课件 ppt 作者  梁燕来 程裕强 第2章 面向过程编程_第5页
第5页 / 共111页
点击查看更多>>
资源描述

《Java面向对象程序设计 教学课件 ppt 作者 梁燕来 程裕强 第2章 面向过程编程》由会员分享,可在线阅读,更多相关《Java面向对象程序设计 教学课件 ppt 作者 梁燕来 程裕强 第2章 面向过程编程(111页珍藏版)》请在金锄头文库上搜索。

1、第2章 面向过程编程,主讲人:程裕强,主要内容,理解面向过程编程思想 掌握Java标识符与注释 掌握Java语言8种基本数据类型 掌握变量和基本运算 掌握三种流程控制 掌握简单的输入输出 了解三种循环设计方法 掌握数组、字符串和枚举类型 掌握方法的定义与使用,2.1 面向过程介绍,面向过程的程序设计,每个程序完成一个特定的功能,是通过对数据一系列的加工而实现的。 面向过程编程包括两部分:数据结构设计和算法设计。 数据结构是程序处理的对象、数据的表示和组成形式,数组、结构体变量是数据的重要表现形式。算法是对数据进行操作的方法和操作步骤。主要操作有:算术运算、逻辑运算、关系运算、函数运算、位运算等

2、操作。 三种基本结构:顺序结构、选择结构、循环结构。 结构化程序设计方法要求:一个程序只能由三种基本控制结构组成。三种基本结构可以组成任何程序,解决任何问题。,2.2 标识符,标识符,标识的符号,就是用来表示类名、变量名、方法名、数组名和文件名等名称的符号。特别强调,Java语言与C语言一样,标识符是区分大写的。 Java标识符规则:Java中的类名、变量名、方法名等标识符由数字、字母、下划线、$组成,不能以数字开头,不能使用Java关键字,更不能有空格。,在定义标识符时,建议遵守以下“潜规则”: 1、尽量做到“见名知义”,增加程序可读性。比如age表示年龄、sum表示求和等等; 2、类名首字

3、母大写,变量名、方法名首字母小写,常量名大写; 3、避免出现“外形相似”易混淆的字符,如: 0(数字)、O(大写字母)、o(小写字母); 1(数字)、I(大写字母)、l(L小写字母); 比如:x0(数字)与xO(大写字母), 11(数字十一)与1l(后一个字符是小写L),容易产生误读。,Java关键字是系统预先定义好的标识符,也称为保留字。用户程序中不能自定义与关键字相同的标识符。 Java关键字有如下50个:abstract、assert、boolean、break 、byte、case、catch、char、class、 continue、default、do、double、else、en

4、um、extends、false、final、finally、float、for、if、implements、import、instanceof、int、interface、long、native、new、package、private、protected、public、return、short、static、strictfp、super、switch、synchronized、this、throw、throws、transient、true、try、void、volatile、while。 其中,enum是Java 5新引进的。此外,goto和const也被系统保留,用户程序不能使用。,2.

5、3 注释,多行注释:“/*”开头,以“*/”结束,可以注释一到多行; 单行注释:“/”,即是一行中从“/”开始后面的内容为注释。 此外Java语言还具有一种注释称为文档注释,以符号“/*”开始,以符号“*/”结束的注释即是文档注释,文档注释会被文档工具读取。,2.4 基本数据类型,Java语言有8种基本数据类型,分为4类:逻辑型、字符型、整数型、小数型。,2.4.1 整数型,C语言中整型数据所占内存空间由具体的编译器来决定,比如int型数据在TC2中占2个字节空间而在VC+环境中占4个字节的空间。数据所在存储空间没有统一标准,这给C语言程序的可移植性带来一定的困难。 Java数据类型克服了这一

6、不足,所有基本数据类型所在存储空间有唯一的标准,为程序移植带来方便。 Java的整数型数据有4种,都是有符号整数,Java不提供无符号整数类型。,四种整数型,Java中整数常量,比如“1”,默认数据类型是十进制的int型。与C语言一样,八进制数以0开头,十六进制数以0x或0X开头。 一般编程语言的整数是不提供二进制数形式的,最新的Java 7有了突破,整型类型数据可以用二进制数形式来表示了,在二进制数值前加0b或0B即可。Java7允许在数值常量中添加下划线。 一个整数常量后带有L或者l,则表示long型数据。 在特殊情况下,我们会遇到超过long型范围的整数,C+通过long long类型来

7、解决,Java中专门提供了一个类,后面详述。 此外,4种整数类型都是有一定范围的,如果数值较大,则可能出现数据溢出。 例1:测试整数常量的八进制、十六进制和二进制三种形式,以及整数溢出问题。,public class IntTest/测试整数 public static void main(String args) int x=010;/八进制 System.out.println(“八进制010=“+x); int y=0x10;/十六进制 System.out.println(“十六进制0x010=“+y); /整数的二进制形式 int i=0b00000001; /2个字节,下划线起到分

8、割作用,增加可读性 int j=0b00000001_00000001; System.out.println(“二进制i=“+i); System.out.println(“二进制j=“+j); /整数溢出 byte max=127; System.out.println(+max); ,Windows平台下编译执行IntTest,Linux平台下编译执行IntTest,从运行结果可以发现,对于byte型最大值127,自加1后结果溢出,溢出值为byte的最小值-128。 对于其他的3种整数类型也有对应结果。,2.4.2 小数型,float:单精度,长度4个字节,第高位符号位,接下来8位为指数

9、,低23位为尾数; double:双精度,长度8个字节,最高位符号位,接下11位为指数,低52位为尾数; 一个实数常量的默认类型是double,无特殊要求时建议选择double类型;对于float型小数常量,需要在小数后加f或F。 小数和整数在计算机中存储是不同的。整数有确定的值,而小数的值是近似值,比如1/3在计算机中无法精确表示,极少情况下会发现有限确定的小数在计算机中表示精度错误。,例2:测试小数精度问题,编写程序代码如下。 public class FloatTest/测试浮点数的精度 public static void main(String args) System.out.pr

10、intln(0.01+0.01); /这是double型的一个bug System.out.println(0.05+0.01); ,2.4.3 字符型,Java中的char型数据使用Unicode编码,即是一个字符占2个字节的存储空间,最高位不是符号位,取值范围065535。比如a字符的Unicode码等于97。 字符常量的三种表示: 1)一般式,直接通过字符来表示,比如a; 2)第二种是转义字符,比如“”表示,“”表示单引号,Java中转义字符的语义与C语言中的转义字符相同; 3)第三种使用数值来表示,Java使用Unicode编码,所以Unicode值来表示字符,格式是uXXXX,其中X

11、XXX代表一个十六进制的整数,比如前256个字符(u0000 u00FF)和ASCII码中的字符完全吻合。,例3:测试char类型 public class CharTest public static void main(String args) char 性别=男; System.out.println(性别); System.out.printf(“%d,%d,%dn“, (int)0,(int)A,(int)a); ,2.4.4 逻辑型,逻辑型(boolean),也就是布尔型,用于表示逻辑上的“真”与“假”。 Java中的逻辑型值只有true和false,不能用0和1代替,这是与C语言

12、的区别。true和false是逻辑常量(小写),是Java关键字。 逻辑型boolean占内存空间大小取决于JVM,可能以1位也可能是一个字节。 boolean型值或变量主要用于程序的流程控制,在后面的程序中会看到。,2.4.5 基本类型的转换,基本数据类型可用自动向高的数据类型转换 比如char到int、byte到short、short到int、int到long、int到float、float到double。 而高类型向低类型转换,需要通过强制转换:(类型名)转换数值,比如(int)3.14。 例4:测试基本数据类型的自动转换问题。编写测试程序TypeConversion.java,代码如下

13、。,public class TypeConversion public static void main(String args) byte b=127; System.out.println(b+1); /1是int型,byteint char ch=a; int x=ch; /charint System.out.println(+x); ch=(char)x; /强制转换 System.out.println(ch); long i=100; /intlong System.out.println(i); /float f=100.1; /double不能自动转换为float floa

14、t f=i+3.14f; /long-float System.out.println(f); double d=f; /float-double System.out.println(d); System.out.println(“0“+1); /基本类型String System.out.println(1l+11); /面试题 ,程序说明: 1)变量b是byte型,在“b+1”表达式中,1是int型,b的值自动转换为int型; 2)当字符串“0“与1进行+运算时,int型的1自动转换为字符串“1”,+运算则表示字符串连接运行,不是数值相加; 3)“System.out.println(1

15、l+11);”是一道面试题,写出执行结果:第一个数是long型的1,后面带上l(L的小写);第二个数是十一(11);所以输出结果是12。,编译执行,2.5 变量,Java是强类型语言,变量必须先声明再使用。 方法内定义的变量,只能在本方法中使用,相当于局部变量,先赋值再使用;方法外的变量,类似于C语言的全局变量,如果没有赋值则具有默认值。 Java使用Unicode编码,所以变量名和变量值都可以使用汉字。 常量是一类特殊的变量,使用关键字final定义的变量即是常量,常量名大写并且定义时赋值,因为常量值是不发生改变的。 例5:测试变量的相关问题。,public class VarTest static int i; /全局变量 static final double PI=3.1415926; /常量 public static void main(String args) int j; char ch=中; /char型可以存储汉字 String 国家=“国“; /汉字可做变量名 System.out.println(i); /默认值 /System.out.println(j); /局部变量j没有赋值 System.out.println(PI); System.out.println(ch+国家); ,编译执行,2.6

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


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

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