14级专科《Java程序设计》课程自学辅导材料.docx
- 文档编号:28532454
- 上传时间:2023-07-18
- 格式:DOCX
- 页数:35
- 大小:414.11KB
14级专科《Java程序设计》课程自学辅导材料.docx
《14级专科《Java程序设计》课程自学辅导材料.docx》由会员分享,可在线阅读,更多相关《14级专科《Java程序设计》课程自学辅导材料.docx(35页珍藏版)》请在冰豆网上搜索。
14级专科《Java程序设计》课程自学辅导材料
14级《Java程序设计》课程教学大纲
一、课程性质、目的和任务
程序设计是计算机学科及电子信息学科各专业本科的核心专业基础课程。
开设Java程序设计课程的目的是,进行程序设计和面向对象方法的基础训练;应用新技术开发各种适用于网络环境的应用程序。
本课程通过全面、系统地介绍Java语言的基础知识、运行机制、多种编程方法和技术,使学生理解和掌握面向对象的程序设计方法,理解和掌握网络程序的特点和设计方法,建立起牢固扎实的理论基础,具备综合应用程序的设计能力。
本课程具有很强的实践性和实用性。
不仅要注重理解基本知识,更要注重培养软件设计的基本技能。
实践性环节是巩固所学理论知识、使理论与实际相结合的一项必不可少的重要环节,是提高程序设计能力和计算机操作能力的有力保障。
通过上机实验,训练学生计算机操作的基本技能,培养学生独立分析问题和解决问题的能力,从而达到理论联系实际的目的,使学生真正掌握所学的理论知识,并把基本概念和原理运用到工程实际中去。
二、教学基本要求
本课程是理论与实践并重的课程,要求学生既要掌握数据结构的基础理论知识,又要掌握操作计算机和运行程序的基本技能;能够熟练运用Java语言编制具有中等难度的应用程序,在实践中培养独立分析问题和解决问题的作风和能力。
本课程的基本要求如下。
1.了解Java语言的特点,理解Java应用程序的运行原理。
掌握在JDK环境中编辑、编译和运行Java程序的操作方法。
2.掌握Java语言的基本语法成分,通过类、接口等机制表达和实现面向对象程序设计思想。
3.掌握Java的多种实用技术,包括Java图形用户界面、Applet应用程序、文件操作和流技术。
4.了解和熟悉Java在更广泛领域的应用技术,包括数据库应用。
三、教学内容及要求
1.Java概述
(1)了解Java语言的特点和核心技术。
(2)熟悉Java程序的两种基本形式,理解由Java虚拟机支持的程序运行机制。
(3)熟悉Java开发运行环境JDK。
2.Java语言基础
(1)掌握Java语言的基本语法成分,包括标识符与关键字、数据类型、运算符、表达式、变量声明等语言成分,掌握分支、循环等流程控制语句的语法和使用。
(2)掌握数组类型的声明和动态内存申请,掌握以基本数据类型和类的两种方式声明和使用字符串。
3.类的封装、基础和多态
(1)理解类的封装性、继承性、多态性等面向对象程序设计思想的基本概念。
(2)掌握类的声明、封装、继承和运行时多态的设计原则和实现方法。
4.接口、内部类和JavaAPI基础
(1)掌握接口声明、类实现多个接口的方法。
(2)理解内部类的概念和应用场合,掌握声明内部类的方法。
(3)理解包的概念,掌握创建自定义包、声明导入包的方法。
5.图形用户界面
(1)掌握Java组件的使用方法,包括窗口、框架、对话框、面板、文本编辑框、按钮、组合框及菜单组件等。
(2)理解委托事件处理模型,掌握不同组件、不同事件的事件处理方法,设计出能够响应事件的Java图形用户界面。
(3)理解Java的组件布局方式,熟练使用多种用于控制组件相对位置的布局管理器。
(4)熟悉在组件上绘图的方法。
6.输入/输出流和文件操作
(1)理解文件和流的概念,理解流在文件操作中的作用。
(2)掌握Java提供的各种字节流类和字符流类的功能和使用方法,掌握Java的标准输入/输出方法。
(3)掌握文件操作的基本方法,熟悉对文件操作的File类、文件过滤器、文件对话框和RandomAccessFile随机存取文件类。
(4)熟悉在对象之间通过流传递数据的方法。
7.数据库应用
(1)理解关系数据库系统的基本概念,掌握结构化查询语言SQL的数据操作和数据查询语句。
(2)了解JDBC各种数据库驱动程序类型,熟悉JDBCAPI提供的接口和类,掌握连接数据库、执行SQL语句、处理结果集等操作方法。
8.Web应用
(1)理解Web应用的基础知识,理解Applet应用程序的运行方式和生命周期。
(2)掌握Applet应用程序的设计方法,掌握嵌入在HTML中的Applet标签;理解Applet的各种状态及变化条件,熟练使用与Applet状态改变有关的方法实现对Applet的控制。
(3)熟悉Applet支持的多媒体和动态网页技术,包括绘制图形、显示图像、播放音频文件等。
熟练使用线程技术实现Applet的动态效果。
四、实践环节
Java程序设计课程是一门理论和实践相结合的课程,不仅仅要注重理解基本知识,更要注重培养软件设计的基本技能。
实践性环节是巩固所学理论知识、使理论与实际相结合、提高程序设计能力和计算机操作能力的一项必不可少的重要环节。
因此,习题课、课后习题、上机实验和课程设计等都是加强程序设计训练所必需的。
推荐教材和教学参考书
教材:
《Java程序设计实用教程(第4版)》,叶核亚编著,电子工业出版社,2013年11月。
《Java程序设计》
面授课时分配表
章次
授课内容)
面授课时
第1章
Java概述
2
第2章
Java语言基础
8
第3章
类的封装、继承和多态
6
第4章
接口、内部类和JavaAPI基础
4
第6章
图形用户界面
6
第8章
输入/输出流和文件操作
4
第10章
数据库应用
6
第8章
Web应用
4
合计
《Java程序设计》
自学周历进度表
周数
时数
章次
作业
1
6
第1章:
Java概述
2~4
24
第2章:
Java语言基础
5~6
18
第3章:
类的封装、继承和多态
7~8
12
第4章:
接口、内部类和JavaAPI基础
9~10
18
第6章:
图形用户界面
11~12
12
第8章:
输入/输出流和文件操作
13~14
18
第10章:
数据库应用
15~16
12
第11章:
Web应用
合计
120
《Java程序设计》自学指导书
主讲老师钱锋
第1章Java概述
一、学习目的和要求:
了解Java;了解Java应用程序及其运行方式;了解Java开发运行环境。
二、内容提要:
1、了解Java
(1)Java的诞生和发展;
(2)Java语言的特点:
●简单性和完全面向对象
语法:
放弃了C语言的全程变量、goto语句、宏定义、全局函数以及结构、联合和指针数据类型。
面向对象概念:
放弃了多重继承、友元类和运算符重载,采用单重继承加接口的方式代替多重继承,提供语言级的内存自动管理和异常处理方式。
●平台无关性
“Writeonce,runanywhere”
●安全性和可靠性
语言级别:
提供严密的语法规则,在编译和运行时严格检查错误。
运行架构级别:
安全模型。
●多线程
●高效的网络编程
(3)Java的核心技术
包括JDBC、JavaServlet和JSP、JavaBeans和EJB、JavaMail。
2、Application应用
(1)Java源程序文件的运行流程教材P006
(3)Java开发运行环境
3、JDK
4、MyEclipse
第2章Java语言基础
一、学习目的和要求:
掌握JAVA基本语言成分;掌握JAVA基本语句和结构化程序设计方法;掌握数组的运用;掌握字符串的运用。
二、内容提要:
1、语言成分
(1)标识符与关键字:
包括:
关键字、标识符、分隔符、注释、程序书写风格等概念。
(2)基本数据类型
●什么是数据类型
●数据类型的分类:
基本数据类型:
8种,分别是整数类型(byte,short,int,long)、浮点数类型(float,double)、字符类型(char)、布尔类型(boolean);
引用数据类型:
3种,分别是数组(array)、类(class)和接口(interface)。
(3)变量与常量
●变量
变量声明:
[修饰符]类型变量[=表达式]{,变量[=表达式]}
例如:
inti,j;
变量参与的运算和操作
●常量
直接常量和符号常量
常量声明:
finalintMAX=10;
(4)运算符与表达式
●运算符
算术运算符:
+(正)、-(负)、++、--、+(加)、-(减)、*、/(除)、%(取余)
关系运算符:
=、<>、>、<、>=、<=
逻辑运算符:
&(与)、|(或)、!
(非)、∧(异或)、&&(条件与)、||(条件或)
位运算符:
~(非)、&(与)、|(或)、^(异或)、<<(左移位)、>>(右移位)
赋值运算符:
=、+=等
强制类型转换符
条件运算符
括号运算符:
()、[]
字符串连接运算符:
+
点运算符:
.
对象运算符:
instanceof
逗号运算符:
,
●运算符的优先级
●表达式
表达式的运算规则
表达式的数据类型
书写表达式时的注意事项
2、流程控制语句
(1)程序的3种基本结构及Java语句分类
●程序的3种基本结构:
顺序结构、分支结构、循环结构
●Java语句分类
(2)顺序结构语句
●表达式语句
●空语句
●复合语句
(3)选择语句
●if语句
if(布尔表达式)
语句1;
[else
语句2;]
复合条件;
if语句嵌套。
●switch语句
switch(表达式)
{
case常量表达式1:
语句序列1;
[break;]
case常量表达式2:
语句序列2;
[break;]
[default:
语句序列;]
}
(4)循环语句
●while语句
while(布尔表达式)
语句;
●do-while语句
do
{
语句;
}while(布尔表达式);
●for语句
for(表达式1;表达式2;表达式3)
语句;
●多重循环
(5)转移语句
return语句
break语句和continue语句
3、数组
(1)一维数组
●声明一维数组变量
数据类型[]数组或数据类型数组[],如:
inta[];或int[]a;
●使用new为数组分配空间
数组=new数据类型[长度],如:
a=newint[5];
inta[]=newint[5];
●数组元素的表示
数组[下标],如:
a[0],a[1],a[2],a[3],a[4]
●数组元素的运算,如:
a[i]=a[i-2]+a[i-1];
●数组长度length,如:
数组.length
●数组声明时赋初值,如:
inta[]={1,2,3,4,5};
(2)、二维数组
●声明二维数组,如:
intmat[][]=newint[3][4];
intmat[][]={{1,2,3},{4,5,6}};
●二维数组元素表示格式如下:
二维数组[下标1][下标2],如:
mat[i][j]//表示第i行第j列的数组元素
(3)字符串
●声明字符串变量,如:
Stringstr="abc";
●字符串运算
赋值运算,如:
str="abc";
Stringstr2=str;
连接运算,如:
str="abc"+"xyz";//str的值为"abcxyz"
关系运算,如:
"ABX"<"AXB"//结果是true,由第2个字符得出比较结果
“ABC”>“AB”//结果是true,较长字符串比较结果“较大”
●String类的主要方法
字符串变量.方法([参数列表]),例如:
Stringstr="abc";
intn=str.length();//n获得str的长度
charch=str.charAt(0);//ch获得str的第1个字符'a'
第3章类的封装、基础和多态
一、学习目的和要求:
掌握类和对象的基本概念与运用;了解类的封装性、类的继承性、类的多态性、抽象类和最终类等基本概念。
二、内容提要:
1、类和对象
(1)面向对象基本概念
●类与对象
类(class)是既包括数据又包括作用于数据的一组操作的封装体。
对象(object)是类的实例(instance)。
●类的封装性、继承性和多态性
●类的封装性
●类的继承性
●类的多态性
(2)定义类
●声明类
类声明
{
成员变量的声明;
成员方法的声明及实现;
}
●声明成员变量
[修饰符]class类<泛型>[extends父类][implements接口列表]
publicclassDate1//类声明
{
intyear,month,day;//声明成员变量
}
●声明成员方法
[修饰符]返回值类型方法([参数列表])[throws异常类]
{
语句序列;
[return[返回值]];
}
●声明main方法
publicstaticvoidmain(Stringargs[])
(3)使用对象
●声明对象:
类对象
●对象实例化
对象=new类的构造方法([参数列表]),如:
Date1aday=newDate1();
●引用对象的成员变量和调用对象方法,如:
对象.成员变量
对象.成员方法([参数列表])
aday.year=2006;//引用对象的成员变量
aday.setDate(2006,1,28);//调用对象的方法
"abcd".equals("abc")
●对象的引用模型
●方法调用时的参数传递原则:
基本数据类型参数传递值;引用数据类型参数传递引用。
●释放对象
2、类的封装性
(1)构造方法与析构方法
●构造方法
声明构造方法:
publicclassDate2
{
publicDate2(inty,intm,intd)//声明构造方法
{//构造方法与类同名,构造方法返回该类的一个实例
year=y;
month=m;
day=d;
}
}
Date2aday=newDate2(2006,1,28);
●关于构造方法声明和使用的几点说明
●析构方法
publicvoidfinalize()//析构方法
{
语句序列;
}
(2)方法的重载
●重载的含义,如:
Math.abs()方法声明有4种:
intabs(inta)
longabs(longa)
floatabs(floata)
doubleabs(doublea)
●成员方法重载
●构造方法重载,如:
Date2aday1=newDate2();
Date2aday2=newDate2(2006,2,28);
●使用拷贝构造方法复制对象,如:
Date2aday3=newDate2(aday2);//由已知对象创建新对象
(4)类及其成员的访问权限
●类中成员的访问权限
类的访问权限:
只有public和缺省两种,如:
publicclassDate1//公有的类
classDate1_ex//默认的类
(5)实例成员与类成员
●实例成员变量与类成员变量
两者声明时的差别
publicclassPerson1
{
Stringname;//姓名,实例成员变量
intage;//年龄
staticintcount;//人数,类成员变量
}
3、类的继承性
(1)什么是继承
●继承的概念:
由一个已有的类定义一个新类,称为新类继承已有的类。
●继承的作用
●继承原则:
子类继承父类的成员变量,包括实例成员变量和类成员变量。
子类继承父类除构造方法以外的成员方法,包括实例成员方法和类成员方法。
子类不能继承父类的构造方法。
因为父类构造方法创建的是父类对象,子类必须声明自己的构造方法,创建子类自己的对象。
子类能够继承父类的析构方法。
子类不能删除父类成员。
子类可以增加自己的成员变量和成员方法。
子类可以重定义父类成员。
(2)定义继承的类
●声明继承的类
[修饰符]class类<泛型>[extends父类][implements接口列表]
publicclassStudent1extendsPerson1
{
Stringspeciality;//专业
}
Java中的类都是Object的子类
publicclassPerson1extendsObject
●类的赋值相容性:
子类对象即是父类对象。
●子类对象对父类成员的访问权限:
子类对父类的私有成员(private)没有访问权限;
子类对父类的公有成员(public)和保护成员(protected)具有访问权限。
子类对父类中缺省权限成员的访问分两种情况,对同一包中父类的缺省权限成员具有访问权限,而对不同包中父类的缺省权限成员则没有访问权限。
4、类的多态性
(1)什么是多态
●方法的重载:
重载(overload)是指同一个类中的多个方法可以同名但参数列表必须不同。
●方法的覆盖:
覆盖(override)是指子类声明并实现父类中的同名方法并且参数列表也完全相同。
(2)运行时多态性
●编译时多态性,如:
Person1p1=newPerson1("李小明",21);//对象获得本类实例,对象与其获得的实例类型一致
Student1s1=newStudent2("王大伟",19);
p1.print();//编译时多态性,执行Person1类的方法
s1.print();//编译时多态性,执行Student2类覆盖的方法
●运行时多态性,如:
Person1p2=newStudent2();//p2获得子类对象,对象与其获得的实例类型不一致
p2.print();//运行时多态,执行Student2类覆盖的方法
5、类的抽象性
●抽象类
声明抽象类与抽象方法:
publicabstractclassPlaneGraphics1//平面图形类,抽象类
{
publicabstractdoublearea();//计算面积,抽象方法,分号";"必不可少
}
抽象类不能被实例化
●最终类
声明最终类:
publicfinalclassMathextendsObject//数学类,最终类
声明最终方法:
publicclassCircle1extendsGraphics1
{
publicfinaldoublearea()//最终方法,不能被子类覆盖
{
returnMath.PI*this.radius*this.radius;
}
}
第4章接口、内部类和JavaAPI基础
一、学习目的和要求:
(1)掌握接口声明、类实现多个接口的方法;理解内部类的概念和应用场合,掌握声明内部类的方法;理解包的概念,掌握创建自定义包、声明导入包的方法。
二、内容提要:
1、接口
(1)接口与实现接口的类
●声明接口:
[public]interface接口[extends父接口]
{
[public][static][final]数据类型成员变量=常量值;
[public][abstract]返回值类型成员方法[(参数列表)];
}
例如:
publicinterfacePlane1//平面图形接口
{
publicabstractdoublearea();//计算面积
}
●声明实现接口的类
[修饰符]class类<泛型>[extends父类][implements接口列表]
例如:
publicclassRectangle2implementsPlaneGraphics2
●接口的作用
图形接口与实现图形接口的类:
●接口的特点:
接口及接口中成员的访问权限都是public
接口中的成员方法都是公有的、抽象的实例成员方法
接口中的所有抽象方法必须全部被实现接口的类覆盖
接口中的成员变量都是常量
表1.1接口不能被实例化
接口是引用数据类型
(2)用接口实现多重继承
●一个类可以继承一个父类并实现多个接口
2、内部类
●声明内部类:
publicclassLine//直线类,外部类
{
protectedPointp1,p2;//直线的起点和终点
protectedclassPoint//点类,内部类
{protectedintx,y;//内部类的成员变量
protectedPoint(intx,inty)//内部类的构造方法
{this.x=x;
this.y=y;
}
}
}
●内部类特性
内部类的类特性:
内部类不能与外部类同名、内部类具有封装性、内部类具有继承性、内部类具有抽象性。
内部类的成员特性:
使用点运算符“.”引用内部类,例如:
Line.Point、内部类具有4种类中成员的访问权限、内部类具有静态特性。
3、包
(1)包的概念
●问题的提出
●什么是包
从逻辑概念看,包(package)是类的集合,一个包中包含多个类;
从存储概念看,包是类的组织方式,一个包对应一个文件夹,一个文件夹中包含多个字节码文件;
包与类的关系,就像文件夹与文件的关系一样。
包中还可以再有子包,称为包等级,子包对应一个子文件夹。
(2)创建、声明和导入包
●创建与包同名的文件夹:
setclasspath=.;C:
\ProgramFiles\Java\jdk1.5.0\lib;C:
\myjava
●声明类所在的包
package包1{.包2};
例如:
packagemypackage;//声明所在的包
publicinterfacePlaneGraphics2
●引用包中的类
包1{.包2}.类|接口
●导入包
import包1{.包2}.类|接口|*;
importmypackage.PlaneGraphics2;
●包之间类及类中成员的访问权限
包中非内部的类或接口只有2种访问权限:
public和缺省。
在类中成员的4种访问权限中,public和private权限与包无关,而protected和缺省权限与包有关。
●Java源程序结构:
package//声明包,0~1句
import//导入包,0~多句
publicclass或interfac
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Java程序设计 14 专科 Java 程序设计 课程 自学 辅导材料