JAVA程序设计 刘英华教材.docx
- 文档编号:9402575
- 上传时间:2023-05-18
- 格式:DOCX
- 页数:73
- 大小:210.42KB
JAVA程序设计 刘英华教材.docx
《JAVA程序设计 刘英华教材.docx》由会员分享,可在线阅读,更多相关《JAVA程序设计 刘英华教材.docx(73页珍藏版)》请在冰点文库上搜索。
JAVA程序设计刘英华教材
南阳师范学院课程教学安排
教材名称及使用版本
Java2程序设计刘英华编著
本课程教学计划课时数
32
本课程实际安排课时数
32
教学内容及课时分配情况
第一章JAVA概述2学时
第二章JAVA语言基础4学时
第三章类与对象4学时
第四章继承2学时
第五章包和接口2学时
第六章异常处理2学时
第七章Java.lang包2学时
第八章多线程编程2学时
第九章输入输出流4学时
第十章 Swing4学时
第十一章网络编程4学时
备注
南阳师范学院课时教学计划
章节
第一章
课题
JAVA概述
计划课时数
2
授课班级
通信、电科12级
教学目的
了解Java语言的发展历史以及特点,面向对象程序设计概述以及特点
教学重点
面向对象程序设计语言Java的基本程序结构和编程开发环境
教学难点
Java语言的环境以及Java小程序的调试
教学方法和手段
多媒体教室
讲授、演示
备注
教学内容
批注
第一章 JAVA概述
1.1Java语言及特点
语言分类
Java属于高级语言与第四代语言之间的语言
Java语言=OOP语言规则+标准类库
1.1.1Java语言的发展
1991年由JamesGosling负责开发的一个分布式代码系统(Oak),最初是为家用消费电子产品(电冰箱、电视机等)进行编程控制。
•1993年Sun公司将目标市场转向Internet。
•1994年将Oak语言更名为Java。
•1995年Java被正式发布,之后立即引起极大的轰动。
1.1.2Java语言的特点
•简单性
•面向对象
•分布式处理
•健壮性
•结构中立
安全性
可移植性
解释性
高性能
多线程
动态
1.2Java版本
J2SE:
Java2标准版(Java2StandardEdition)是整个Java技术的核心和基础,为用户提供了开发与运行Java应用程序的编译器、基础类库及Java虚拟机等
J2ME:
Java2微型版(Java2MicroEdition)是用于移动设备、嵌入式设备上Java应用程序的开发,包括虚拟机和一系列技术规范。
J2EE:
Java2企业版(Java2EnterpriseEdition)是Java语言中最活跃的体系之一。
J2EE不仅仅是指一种标准平台(Platform),更多的表达着一种软件架构和设计思想。
它提供了一套完整的企业级应用开发解决方案。
教学内容
批注
重要概念
•JDK:
是整个Java的核心,包括了Java运行环境(JavaRuntimeEnvironment)、Java工具和Java基础的类库
•J2SDK:
早期的Java软件开发工具包是JDK,现在称为J2SDK了
•JRE:
(javaruntimeenvironment),即java运行环境
•
1.3Java环境构建
在网站2SDK开发工具,。
•设置环境变量:
path=javac和java命令所在的目录。
classpath=存放字节码文件的目录。
•Java2SDK简介及使用。
•Java程序的开发环境:
文本编辑器记事本UltraEdit等
集成开发环境JBuilderEclipse等
1.4开发Java程序
JavaApplication
JavaApplet
●java程序结构
•
(1)至多有一个public类,文件名必须与类名相同。
•
(2)程序可以有一个或多个其它类。
•(3)当需要从某个类继承或使用某个类及其方法时,使用import引入该类的定义。
•(4)Java程序组成结构
•package//0个或1个,必须放在文件开始
•import//0个或多个,必须放在所有类定义之前
•publicclassDefinition//0个或1个,文件名必须与类名相同
•classDefinition//0个或多个
•interfaceDefinition//0个或多个
教学内容
批注
●java程序规范
源文件的命名规则:
与公共类名相同
包名、类名、接口名:
首字母和单词首字母大写
方法名:
第一个单词通常为动词,首字母小写,中间的每个单词的首字母都要大写
变量名:
全小写,一般为名词,例如:
length
常量名:
基本数据类型的常量名为全大写,如果是由多个单词构成,可以用下划线隔开
●错误分析与处理
编译时错误
不能产生字节码,根据提示检查源代码
运行时错误
异常,进行异常捕获和处理
逻辑错误
可以运行,无提示,结果不正确。
检查设计思路和算法
◆Java应用程序
publicclassHello
{
publicstaticvoidmain(Stringargs[])
{
System.out.println("HelloJava!
");
}
}
1.编辑Java应用程序
保存的文件名是“Hello.java”
2.编译Java应用程序
C:
\DocumentsandSettings\Administrator>f:
F:
\>cdliu
F:
\Liu>javacHello.java
3.运行Java应用程序
F:
\Liu>javaHello
南阳师范学院课时教学计划
章节
第二章
课题
JAVA语言基础
计划课时数
4
授课班级
通信、电科12级
教学目的
掌握标识符的定义规则,了解关键字,了解基本类型的种类;掌握可作用于各基本类型对象的运算符的使用;了解表达式的概念;理解类型转换的含义;掌握java的控制语句。
教学重点
简单数据类型,常量、变量、基本数据类型及其转换,运算符和表达式,控制语句。
教学难点
基本数据类型及其转换,运算符的优先级和表达式。
教学方法和手段
多媒体教室
讲授、演示
备注
教学内容
批注
第二章JAVA语言基础
【2.1标识符和关键字】
标识符
用来表示变量、方法或类等的名字。
定义的规则如下:
只能使用字母、数字、下划线和美元符。
只能以字母、下划线和美元符开头。
严格区分大小写,没有长度限制。
应该具有特定的意义。
正确的标识符:
A_001_123¥$abc
不正确的标识符:
2number、number#、int
关键字
关键字是Java语言中具有特殊含义和用途的单词。
abstract
default
if
private
this
boolean
do
int
protected
throw
break
double
import
public
throws
byte
else
implements
package
try
case
extends
instanceof
return
transient
catch
final
interface
short
void
char
finaly
native
strictfp
volatile
class
for
new
static
switch
continue
float
null
super
while
cast
false
long
synchronized
注释(comment)
1.短注释
格式:
//……
功能:
表示从“//”符号开始到此行末尾的位置都视为注释。
2.块注释
格式:
/*……*/
功能:
表示从“/*”开始,到“*/”结束都视为注释部分。
3.文档注释
格式:
/**……*/
功能:
注释若干行,可以通过javadoc.exe生成Java帮助文档。
教学内容
批注
【2.2基本数据类型】
实型常量
(1)用十进制数形式表示,由数字和小数点组成,例如,3.25。
(2)用科学计数法形式表示,例如,123E-3。
(3)数后加f或F为float,加d或D为double,没有后缀修饰的则缺省为double类型。
实型变量
实型变量按长度分为:
float和double。
double:
8个字节
Float:
4个字节。
例如,floatf;
doubled;
字符型数据
字符常量是用单引号括起来的一个字符,如:
'J'、'*'。
Java中有以反斜杠(\)开头的字符,反斜杠将其后面的字符转变为另外的含义,称为转义字符。
Java中的字符型数据是16位的Unicode字符,汉字和英文字母占的内存空间相同。
“JAVA你好”共12个字节。
变量的定义如下:
charch=‘c’;
转义字符
\n换行\t跳格\r回车\b退格\’单引号\”双引号\\
字符串型数据
字符串常量是使用双引号括起来的字符序列,注意:
最后字符不是‘\0’。
例如:
"Let’slearnJava!
"。
字符串变量作为对象来处理,通过String和StringBuffer类的构造方法来定义。
Strings=newString();
布尔型数据
布尔型常量值只有:
true和false。
布尔型变量为boolean类型,去值为true和false。
例如,booleanb=true
教学内容
批注
◆数据类型转换
1.自动类型转换byte 2.强制类型转换 3.字符型的转换 publicclassEx {publicstaticvoidmain(Stringargs[]) { charx='a'; inty=12; floatz=12.34F; System.out.println(x+y+z); }} 【2.3变量和常量】 变量就是在程序运行过程中其值可以发生变化的量。 例如: inti;//声明一个整型变量i 常量就是在程序运行过程中其值始终不变的量。 Java语言中,常量标识符一般为大写。 常量格式与变量相似,常量前加final关键字。 例如: finalfloatPI=3.1416F; 【2.4运算符和表达式】 ◆赋值运算符 赋值运算符“=”是双目运算,“=”左边是变量,右边是变量、常量或表达式,表示把右边的内容赋值给左边的变量。 例如: intx=3;//左边是变量x,右边是常量3 inty=x+5;//左边是变量y,右边表达式x+5,即y=8 赋值运算符的结合方向是从右到左。 ◆算术运算符 算术运算符包含单目运算符和双目运算符两种 包括: +,-,*,/,%,++,--等。 前缀++: 变量首先进行操作在自身进行加。 教学内容 批注 例如,inta=2;intb=a++;(a=3,b=2) 后缀++: 变量自身首先加然后再进行操作。 例如,inta=2;intb=++a;(a=3,b=3) ◆关系运算符 完成操作数的比较运算,结果为布尔类型值。 包括: ==,! =,<,<=,>,>=,instanceof。 优先级低于算术运算符,执行顺序自作向右。 ◆布尔逻辑运算符 包括: &,|,! ,^,&&,||。 注意区别简洁与&&(或||)和非简洁与&(或|) 例如,inta=6,b=8,c=10,d=12; booleanx=++a>b++&&c++>d--; ◆位运算符 •按位取反〜,〜01010101=10101010。 按位与&,11111001&10001111=10001001。 按位或|,11111001|10001111=11111111。 按位异或^,11111001^10001111=01110110。 左移<<,10101011<<2=10101100。 右移>>,10101011>>2=11101010。 无符号右移>>>,10101011>>>2=00101010。 ◆复合赋值运算符 包括: +=,-=,*=,/=,%=。 ◆条件运算符 为(? : )一般形式为: 表达式1? 表达式2: 表达式3; 例如, doublesalary=(xintanceofteacher)? 2000: 200; ◆表达式 由操作数和运算符按照一定的语法格式组成表达式。 例如,(a+b)*(c-d)。 ◆优先级 运算符的优先级决定了表达式中各种运算符的执行顺序。 1()[].优先级最高,2单目运算次之! (逻辑非)+(正号)-(负号)~(按位反)++--;3算术运算*/%4+- 5<<(按位左移)>>(按位右移)6<<=>>= 教学内容 批注 【2.5数组】 ◆声明数组 声明一维数组的格式如下: 数据类型数组名[];intage[]; 数据类型[]数组名;int[]age; 声明二维数组的格式如下: 数据类型数组名[][];intscore[][]; 数据类型[][]数组名;float[][]salary; ◆创建数组 创建一维数组的格式如下: 数组名=new数据类型[数组长度]; intage[]; age=newint[5]; 也可以直接写成如下形式: intage[]=newint[5]; ◆初始化数组 创建数组后,系统为数组分配了内存,同时给每个数组元素一个初始值。 例如: inta[]={1,2,3,4,5}; intscore[][]={{1,2,3},{4,5,6}}; ◆数组元素的使用 数组元素的使用与变量的使用方法相同。 使用数组元素的格式如下: 数组名[下标]a[0]=25;score[0][0]=71; ◆数组的length属性 任何一个数组都有自己的length属性,length属性的值是数组的长度,也就是通过关键字new分配的内存块数。 对于二维数组来说,length属性的值是它的行数。 【2.7控制语句】 控制语句可以控制程序的流程,包含条件语句、循环语句和跳转语句。 条件语句: if和switch语句; 循环语句: for、whie和do-while语句; 跳转语句: break、continue和return语句。 教学内容 批注 //只有if部分 if(x>50) System.out.println(x+"是大于50的数"); //有if和else部分,但语句块只有1句,无{} if(x>=0) System.out.println(x+"是非负数"); else System.out.println(x+"是负数"); ◆for循环语句 循环结构是指在一定条件下反复执行一段代码。 for循环语句的格式如下: for(表达式1;表达式2;表达式3) { 循环语句块; }◆while循环语句 while循环语句的格式: while(条件表达式) { 循环语句块;} ◆do-while循环 do-while循环语句的格式: do { 循环语句块; }while(条件表达式);。 ◆跳转语句 break语句的功能是从一个语句块中跳出,经常在switch语句和三种循环语句中使用。 continue语句的功能是结束本次循环,然后根据循环语句的“条件表达式”判断是否开始下一次循环。 return语句的功能是从方法中退出,并为方法返回一个值。 南阳师范学院课时教学计划 章节 第三章 课题 类和对象 计划课时数 4 授课班级 电科通信12级 教学目的 掌握类与对象的概念,对象的创建和引用变量的使用方法. 掌握访问权限管理 教学重点 对象的创建和引用变量的使用方法 教学难点 访问控制符。 教学方法和手段 多媒体教室 讲授、演示 备注 教学内容 批注 第三章 使用类和对象 【3.1面向对象程序设计】 面向对象的程序设计是Java语言的核心,任何一个Java程序,那怕是很小的程序都是基于面向对象的程序设计。 面向对象的程序设计是一种计算机编程架构,它倾向于建立一个对象模型,能够近似的反映应用领域内的实体与实体间的关系,其本质上更接近于一种人类认知事物所采用的哲学观的计算模型。 面向对象的程序设计有以下三个特点: 封装 继承 多态 【3.2类】 •◆类定义的格式 class类名 { 数据类型成员变量1; 数据类型成员变量2; ... 数据类型成员变量M; 数据类型成员方法名1(参数列表){方法体} 数据类型成员方法名2(参数列表){方法体} ... 数据类型成员方法名N(参数列表){方法体} } 【例3.1】定义并使用Rect类。 classRect { intheight;//定义成员变量 intwidth; voidshowArea()//定义成员方法 { System.out.println("面积="+height*width); } } 教学内容 批注 publicclassEx { publicstaticvoidmain(Stringargs[]) { Rectr=newRect();//创建Rect类的对象r r.height=100;//使用点操作符(.)操作成员变量 r.width=50; r.showArea();//使用点操作符(.)操作成员方法} } ◆成员变量 成员变量是类定义的一部分,成员变量可以是任何数据 类型的数据。 Rectr=newRect(); 系统给对象r的两个成员变量height和width,即r.height 和r.width分配内存空间。 成员变量在整个类的定义中都有效,也就是说类定义中的 成员方法和成员变量都可以操作某个成员变量。 但是局部变量 只在声明它的块(例如一个方法,或一个for循环)中有效。 ◆构造方法 构造方法是一种方法名与类名相同的成员方法。 构造方 法没有返回值,其返回值类型不可以写为void的,更不可以 在构造方法名前面声明方法类型。 构造方法的主要作用是完成对象的初始化,它能够把定 义对象时的参数传给对象成员变量。 构造方法可以无参数,也可以有一个或多个参数。 ◆成员方法 成员方法也是类的一部分,大部分的类定义中都包含成员 方法。 成员方法的返回值可以是任何数据类型的数据。 如果 没有返回值,返回值类型写成void。 voidset(inta,intb) { height=a;//把局部变量a的值赋值给成员变量height width=b;} 教学内容 批注 【3.3对象】 对象是类的实例,类是对象的模板。 ◆使用对象 通过点运算符(.)操作对象的成员变量,调用成员方法。 r.height=100; r.showArea(); ◆对象的引用 Rectr1=newRect(2,3); Rectr2=r1; r1=null; 因为对象r1重新赋值,所以其值不再是new关键字所分配的地址,而是null,但对象r2依旧指向new关键字所分配的地址。 publicclassEx {publicstaticvoidmain(Stringargs[]) {Rectr1=newRect(2,3); Rectr2=newRect(6,1); System.out.println(r1.equal(r2)); //比较r1.area()与r2.area()值是否相同 }} 教学内容 批注 【例3.7】对象作为参数使用。 classRect { intheight;//定义成员变量 intwidth; Rect(inta,intb) { height=a; width=b; } intarea()//定义成员方法 { returnheight*width; } booleanequal(Rectr)//参数是Rect类的对象r { if(r.area()==area()) returntrue; else returnfalse;} ◆返回对象 ◆对象数组 如果要定义和创建具有三个Rect类对象的数组,则格式如下: Rectr[]=newRect[3]; Rect[]r=newRect[3]; 【3.4访问控制权限】 Java的访问控制通过访问控制符(也是Java的关键字)public、private、protected和默认四种访问控制符实现。 访问控制符在使用的时候放在类成员的数据类型之前。 ◆访问控制符public public关键字说明的类成员可以被程序中的其他类、其他代码使用。 ◆访问控制符private 仅在类内部可以访问 ◆访问控制符protected 在子类中可以使用超类中用protected关键字修饰的成员 教学内容 批注 【3.5this关键字】 Java中任何一个对象都可以通过this关键字引用其自身。 在【例3.13】的Rect类定义中set方法如下定义: publicvoidset(inth,intw) { height=h; width=w; } 为了更准确的说明可以将上面的代码修改为如下代码: publicvoidset(inth,intw) { this.height=h; this.width=w;} 【3.6static关键字】 在类定义中创建一种特殊的变量,它可以被所有的类对象共享,就需要在变量前加static关键字,则这个类成员变量称为静态变量(也称为类变量)。 如果在类成员方法前加static关键字,则称为静态方法(或类方法)。 –◆静态变量(类变量) 静态变量是被所有的类对象共享的,所有声明、创建的类对象当然也可以操作静态变量。 –◆静态方法(类方法) –静态方法可
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- JAVA程序设计 刘英华教材 JAVA 程序设计 英华 教材
![提示](https://static.bingdoc.com/images/bang_tan.gif)