java面向对象程序的设计_教(学)案

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
构造方法用于创建类的对象。构造方法的作用主要就是在创建对象时执行一些初始化操作。可以通过构造方法重载来实现多种初始化行为。
封装就是将类的成员属性声明为私有的,同时提供公有的方法实现对该成员属性的存取操作。
授课时间
第4周第1、2、3 节
课次
1
授课方式
(请打√)
理论课√ 讨论课□ 实验课□ 习题课□ 其他□
抽象类不能实例化,抽象类中可以没有、可以有一个或多个抽象方法。子类必须重写所有的抽象方法才能实例化,否则子类还是一个抽象类。
instanceof运算符通常和强制类型转换结合使用,首先通过instanceof进行类型判断,然后进行相应的强制类型转换。
授课时间
第7周第1、2、3 节
课次
1
授课方式
(请打√)
1.使用接口实现打印机
2.static和final的使用
3.public、protected、friendly(默认省略)和private的使用
课后小结:
接口是java中实现多继承的重要手段,接口可以使java的代码更规,从而实现“对扩展开放,对修改关闭”的开发原则。Java又叫面向接口编程。
static和final可以一起使用来定义一个常量,也可以分开使用。static可以修饰属性和方法,final可以修饰类、属性和方法。
理解Java中两种异常处理机制,抛弃异常和声明抛弃异常的区别与联系。
了解自定义异常

教学重点及难点:
正确地使用捕获异常和声明抛弃异常的两种异常处理的方法。
理解Java中两种异常处理机制,抛弃异常和声明抛弃异常的区别与联系。
教学基本容
方 法
手 段
任务一 异常的产生
任务二 异常的处理
任务三 自定义异常
提问式多媒体教学
课上前几分钟讲解上一次实验的优点缺点,鼓励大家多动手。下课前几分钟讲解下次实验容,让同学们有充分的时间去考虑解决问题的方法,同一个题目往往要求多种解法,让大家自己比较多种解法的有缺点,从而提高大家的逻辑思维能力、动手能力和自己解决问题的能力。
其它要求
严格考勤,注重学生课堂表现及课堂参与情况,课下作业,课下实验,充分发挥大家解决问题的能力。
学习使用多态
多态的使用场景
子类父类的相互转换
教学重点及难点:
1.学习使用多态
2.多态的使用场景
3.子类父类的相互转换
教学基本容
方 法
手 段
任务一 什么是多态
为了进一步提高教学质量和学生学习的积极性,学校增加了一个教学督导组,目的是监督教师的教学情况以及学生的学习情况。
督导监督教师教学主要从以下几个方面监督:
课后小结:
java语言面向对象编程的思路认为程序都是对象的组合,因此要克服面向过程编程的思路,直接按照对象和类的思想去组织程序,面向对象所具有的封装性、继承性、多态性等特点使其具有强大的生命力。作为面向对象编程人员来说,大体可以分为两种:类创建者和应用程序员,应用程序员是类的使用者。所以对程序的可读性和API帮助文档就有要求,java语言本身有一套约定成俗的编程规,同时程序员首先要学会阅读系统API帮助文档,还要学会生成自己编写的程序的API帮助文档。
5.在控制台打印出角色信息,包括、年龄、性别、教课方向或者所在年级。
提问式多媒体教学
作业和思考题:
画出代码2-8的类图,并根据Teacher类的类图,设计出Student类属性被封装后的类图。
实现角色信息录入和打印。
给Student类增加Student (name)构造方法
对Student类的所有属性进行封装,并设定名字不能多于4个字符,年级不能是“大一、大二、大三”以外的数据。
在子类中可以根据实际需求对从父类继承的方法进行重新编写,称为方法的重写或覆盖。
子类中重写的方法和父类中被重写方法必须具有相同的方法名、参数列表、返回值类型必须和被重写方法的返回值类型相同或者是其子类。
如果子类的构造方法中没有通过super显式调用父类的有参构造方法,也没有通过this显式调用自身的其他构造方法,则系统会默认先调用父类的无参构造方法。
源自文库
授课时间
第3周第1、2、3 节
课次
1
授课方式
(请打√)
理论课√ 讨论课□ 实验课□ 习题课□ 其他□
课时
安排
3
授课题目(教学章、节或主题):
单元知识2 抽象和封装 面向对象思路、构造函数、封装
教学目的、要求(分掌握、熟悉、了解三个层次):
学习面向对象设计的过程,从现实世界中抽象出类
实现对现实世界的模拟
理解final和static修饰符的使用
教学基本容
方 法
手 段
任务一 接口的定义与使用
在生活中,我们比较常见的接口就是usb接口了,现在大部分的鼠标、键盘、U盘等都统一使用usb接口,那么usb接口是如何做到无论插入什么设备都可以直接使用的呢?
任务二 final和static修饰符
Java中如何表示常量,如圆周率pi这样基本保持不变的值。
课时
安排
3
授课题目(教学章、节或主题):
单元知识3 继承 优化设计、重写父类、父类声明和子类实例化
教学目的、要求(分掌握、熟悉、了解三个层次):
学习使用继承
方法重写的目的
父类的声明和子类的实例化
教学重点及难点:
1.方法重写
教学基本容
方 法
手 段
1.任务一 使用继承优化设计
2.任务二 子类重写父类方法
1、教师上课是否上课表达准确。
2、讲解思路清晰。
监督学生上课情况:
1、不迟到、早退、旷课。
2、课堂认真学习。
任务二 抽象类
代码4-6的Person类中有一个函数learn()没有任何实现,也没有实现它的意义,那么能否在去掉Person类中的learn函数呢?如果不能,是否可以只是声明函数,而不提供实现呢?
授课时间
第1、2周第1、2、3 节
课次
2
授课方式
(请打√)
理论课√讨论课□ 实验课□ 习题课□ 其他□
课时
安排
6
授课题目(教学章、节或主题):
单元知识1 JAVA面向对象语言基础 对象、方法、数组、代码规
教学目的、要求(分掌握、熟悉、了解三个层次):
理解类和对象的概念
理解方法
理解数组
教学重点及难点:
6.为了程序阅读和交流方便,适当的注释是必不可少的,因此我们需要给代码添加注释。另外,很多企业反馈:刚毕业的学生写的代码没法看,命名不规,代码无缩进等,所以一般在做项目之前,都会有个代码规要求,这就是java代码规。
提问式多媒体教学
作业和思考题:
猜数小游戏
用*打印图案:
输入输出学生信
按照成绩降序排列并输出
Java中的其他限定符是为属性的访问围设定的,常用的是public和private。
授课时间
第8周第1、2、3 节
课次
1
授课方式
(请打√)
理论课√ 讨论课□ 实验课□ 习题课□ 其他□
课时
安排
3
授课题目(教学章、节或主题):
单元知识6 异常 产生、处理、原理、自定义异常
教学目的、要求:
正确地使用捕获异常和声明抛弃异常的两种异常处理的方法。
作业和思考题:
根据编号输出课程名称
自定义异常
使用throw抛出异常
课后小结:
异常处理是java语言中的一个独特之处,主要使用捕获异常和声明抛弃异常两种方法来处理程序中可能出现异常的语句块,其中捕获异常是一种积极处理异常的方法,而声明抛弃异常是一种消极处理异常的方法。
Try块可以配一个或者多个catch块,也可以只配一个finally块。配多个catch块时要注意顺序。
理论课√ 讨论课□ 实验课□ 习题课□ 其他□
课时
安排
3
授课题目(教学章、节或主题):
单元知识5 接口、常用修饰符和包 接口定义、修饰符、包
教学目的、要求(分掌握、熟悉、了解三个层次):
学习使用接口
理解面向接口编程
理解final和static修饰符的使用
了解其他限定符
教学重点及难点:
理解面向接口编程
3.任务三 父类的声明和子类的实例化
提问式多媒体教学
作业和思考题:
创建角色对象并输出信息
方法的覆盖
this和super的使用
父类声明和子类实例化
课后小结:
继承是Java 中实现代码重用的重要手段之一。Java中只支持单继承,即一个类只能有一个直接父类。java.lang.Object类是所有Java类的祖先。
理解类和对象的概念
理解方法
理解数组
1.
教学基本容
方 法
手 段
1.如何把“学生”用java语言描述出来并输出学生信息?
2.类设计好之后,我们如何使用它?程序从哪里开始执行?
3.学生对象属性赋值后,请输出学生信息。
4.从键盘上录入学生三门课成绩,计算平均成绩并输出。
5.循环随机产生10位同学的成绩,进行升序排列后输出结果。
课程编号
总计 :54学时
学分
讲课:27学时
实验:27学时
上机:学时
类别
必修课(√)选修课()理论课( )实验课()
任课教师
林萍
职称
讲师
授课对象
专业班级:14软件3班共1个班
教 材
参考资料
教材:
Java高级项目化教程 主编:林萍 清华大学
参考教材:
1.JAVA基础与案例开发详解 主编:孝祥 清华大学
2.Java程序设计 朱喜福等 主编 人民邮电
3.Java学习笔记良葛格 编著 清华大学
4.Java程序设计 古凌岚等 编著清华大学
教学方法教学手段
教学方法:课堂讲授,启发式教学,课堂讨论,案例教学,研究性教学,提问式教学,课程论文,课程设计,学生讲授,师生互动。
教学手段:多媒体教学,网络教学。
考核方式
闭卷考试,课程设计,考证。
学生创新精神与实践能力的培养方法
声明部分为父类,赋值部分为子类的对象,在调用重写的方法时,会调用子类的方法,属性被覆盖则正好相反。
4、
授课时间
第5、6周第1、2、3 节
课次
2
授课方式
(请打√)
理论课√ 讨论课□ 实验课□ 习题课□ 其他□
课时
安排
6
授课题目(教学章、节或主题):
单元知识4 多态 多态概念、抽象类、子类和父类的转换
教学目的、要求(分掌握、熟悉、了解三个层次):
自定义异常给程序提供了一个统一的异常处理接口,自定义异常必须继承Exception类。
对抽象出的类进行优化,通过封装隐藏部信息
1.
教学重点及难点:
1.从现实世界中抽象出类
教学基本容
方 法
手 段
1.根据控制台提示,输入。
2.根据控制台提示,选择角色类型,有两种选择:教师和学生。
3.如果类型选择教师,要选择教师教课的方向,有两种选择:“java方向”或者“.net方向”。
4.如果类型选择学生,要选择学生所在的年级:“大一”、“大二”或者“大三”。
任务三 public、protected、friendly和private修饰符
在java中,还常见四种修饰符:public、protected、friendly(默认省略)和private,它们修饰类的方法和属性时有什么不同呢?
任务4 包
在java中,如果类名相同该怎么处理?
提问式多媒体教学
作业和思考题:
提问式多媒体教学
作业和思考题:
1.计算交通工具运行1000公里需要的时间。
2.程序功能扩展
3.综合运用面向对象知识
4.抽象类
课后小结:
通过多态可以减少类中代码量,可以提高代码的可扩展性和可维护性。继承是多态的基础,没有继承就没有多态。
把子类转换为父类,称为向上转型,自动进行类型转换。把父类转换为子类,称为向下转型,必须进行强制类型转换。向上转型后通过父类引用变量调用的方法是子类覆盖或继承父类的方法,通过父类引用变量无法调用子类特有的方法。向下转型后可以访问子类特有的方法。必须转换为父类指向的真实子类类型,否则将出现类型转换异常ClassCastException。
任务三 父类和子类的相互转换
在上一单元学习中,我们知道,如果我们这样去声明和赋值一个对象:
Person p = new Teacher();
那么对象p的属性和函数也仅仅只包含在Person类中声明的属性和函数,要想使用Teacher类中独有的函数,比如getMajorField()函数是不可以的。是否有办法使用在子类中独有的方法呢?
课后小结:
现实世界是“面向对象”的,面向对象就是采用“现实模拟”的方法设计和开发程序。面向对象技术是目前计算机软件开发中最流行的技术。面向对象设计的过程就是抽象的过程。
类是对某一类事物的描述,是抽象的、概念上的定义。对象是实际存在的该事物的个体,是具体的,现实的。
如果同一个类中包含了两个或两个以上方法,他们的方法名相同,方法参数个数或参数类型不同,则称该方法被重载了,这个过程称为方法重载。
附件二
科学技术职业学院
教案
2014~2015学年第二学期
学院(系、部)
计算机工程技术学院
课 程 名 称
Java面向对象程序设计
授 课 班 级
14软件3班
主 讲 教 师
林 萍
职 称
讲 师
使 用 教 材
JAVA高级编程项目化教程
科学技术职业学院教务处制
二○○六年九月
教 案(首页)
课程名称
Java面向对象程序设计
相关文档
最新文档