《Java语言编程基础立体化实用教程》教案—2.2 学生成绩操作接口的实现.docx
《《Java语言编程基础立体化实用教程》教案—2.2 学生成绩操作接口的实现.docx》由会员分享,可在线阅读,更多相关《《Java语言编程基础立体化实用教程》教案—2.2 学生成绩操作接口的实现.docx(16页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、山东理工职业学院单元教学过程设计首页课程所属院(部):软件工程学院 2019-2020学年 第一学期课程名称Java语言编程基础任课教师单元标题项目二任务2 学生成绩类操作接口的实现上课地点学时6授课班级授课时间第 周第 周第 周第 周第 周第 周星期 星期 星期 星期 星期 星期 第 节第 节第 节第 节第 节第 节月 日月 日月 日月 日月 日月 日教学目标能力目标知识目标1.能掌握利用接口编写程序的方法1. 了解接口的概念和意义;2. 掌握定义接口和实现接口的方法;3. 掌握定义数据表操作接口的方法;4掌握实现数据表接口的方法。教学任务通过接口提供的方法来操作数据库中的表教学重、难点重点
2、:定义接口和实现接口的方法难点:实现数据表接口的方法教学材料或用具教材、教案、课件、课程标准、案例素材及Eclipse开发软件课后任务1利用抽象类分别求三角形、矩形和圆的面积、周长。2巩固例子山东理工职业学院单元教学过程设计步骤及时间教学内容教师活动学生活动5分钟5分钟20分钟40分钟50分钟20分钟50分钟60分钟10分钟【组织教学】1、检查学生出勤,作好学生考勤记录。2、课堂提问,了解学生掌握所学知识情况。3、强调课堂纪律,加强互动,活跃课堂气氛。【课题导入】任务1.1用记事本完成了代码设计,但是还无法看到代码执行后的效果。任务二是在任务一的基础上,利用Java语言的开发工具运行该程序,并
3、得到运行结果。在此过程中,需要了解开发工具的使用方法、文件建立的方法、代码的编写、存储,以及程序的运行过程。【讲授新课】8.4.1抽象类和接口1抽象类 抽象类是普通类与接口之间的一种中庸之道。Java规定,用关键字abstract修饰的类称为抽象类(abstract类),用关键字abstract修饰的方法称为抽象方法。例如:abstract class Base /抽象类定义 abstract void method1(); /抽象方法定义 void method2() /具体方法定义 System.out.println(method2);声明格式:abstract class 类名 abs
4、tract 数据类型 方法名(参数表);【注意】(1)方法声明中没有; (2)方法声明最后的“;”不能省略。【说明】(1)用abstract修饰的类表示抽象类,抽象类不能被实例化,即不允许创建抽象类本身的实例。没有用abstract修饰的类称为具体类,具体类可以被实例化。(2)用abstract修饰的方法表示抽象方法,抽象方法没有方法体。抽象方法用来描述系统具有什么功能,但不提供具体的实现。没有用abstract修饰的方法称为具体方法,具体方法具有方法体。(3)抽象方法必须声明在抽象类中,而且抽象方法只需声明,不需实现。(4)父类中的某些抽象方法不包含任何逻辑,需要在子类继承中由子类提供抽象方
5、法的实现细节。(5)含有抽象方法的类必须声明为抽象类(abstract类)。抽象类中不一定包含抽象方法,但包含抽象方法的类一定要声明为抽象类。(6)抽象类中可以包含构造方法,由于不能利用抽象类直接创建对象,因此抽象类中定义构造方法是多余的。【例8.1】找出下面程序中的错误,并说明原因。abstract class Base abstract void method1(); abstract void method2();class Sub extends Base void method1() System.out.println(method1); 2接口接口(interface)就是方法和
6、常量的集合,为了使Java程序的类层次结构更加合理,更符合实际问题的本质,编译者可以把用于完成特定功能的若干属性组织成相对独立的属性集合;凡是需要实现这种特定功能的类,都可以继承这个属性集合并在类内使用它,这种属性集合就是接口。【说明】接口使抽象的概念更向前迈进了一步,接口产生一个完全的抽象类,它根本就没有提供任何具体实现。允许创建者确定方法名、参数列表和返回类型,但是没有任何方法体。接口只提供形式,不提供任何具体实现。接口定义格式: public interface 接口名 publicstaticfinal 类型 变量名=常量值; publicabstract类型 方法名(参数列表); 说
7、明:接口修饰符为public或省略形式,分别为公共接口,或者是友好接口;而属性和方法均为public权限。接口体由两部分组成:(1)对接口中属性的声明接口中只能包含public、static、final类型的成员变量,因此接口中的属性都是用final修饰的常量。(2) 对接口中方法的声明接口中只能包含public、abstract类型的成员方法,不能有非抽象方法。在接口中只能给出这些抽象方法的方法名、返回值和参数列表,而不能定义方法体,即仅仅规定了一组信息交换、传输和处理的“接口”。【例8.2】接口定义举例public interface A public static final int X
8、=1; public static final int Y=2; public static final int Z=3; public void show();【例8.3】找出下面程序中的错误,并说明原因。public interface A int var; void method1() System.out.println(method1); protected void method2(); static void method3() System.out.println(method3); 3接口的实现接口的实现:接口由类来实现,而且一个类能实现许多接口。实现的格式如下:class
9、类名 implements 接口1 ,接口2,接口3,接口n .例如:假设A,B,C为已经定义的接口public class MyInterface implements A,B,C . 【说明】类MyInterface实现了三个接口,即实现三者所有方法。【例8.4】实现SayHello接口interface SayHello void printMessage(); class MySayHello implements SayHello public void printMessage() System.out.println(Hello); 【例8.5】找出下面程序中的错误,说明原因,并
10、进行改正。interface SayHello void printMessage(); void receiveMessage(); class MySayHello implements SayHello public void printMessage() System.out.println(Hello); 【注意】(1)接口一经声明并实现,即可以使用。(2)同一个接口可以由多个类来实现,接口中的同一个方法在实现这个接口的不同的类中可以有不同的具体实现(多态性)。(3)接口是一个规范,是一个抽象的概念,由类把这个规范具体实现。4类和接口的区别(1)类只能继承一个类,而对于接口,类可以实
11、现多个接口。 (2)对于继承性,类继承了超类的方法:子类可以选择是否覆盖超类的方法。接口的方法没有实现,因此,类必须实现接口中的每个方法。(3)从本质上讲,接口是一种特殊的抽象类,这种抽象类中只包含常量和方法的定义,而没有变量和方法的实现。(4)接口像一个规范,一个协议,而类则是实现了这个协议,满足这个规范的具体实现。5接口和抽象类的区别相同点:(1)都包含抽象方法,声明多个类共享方法首部。(2)都不能被实例化。不同点:(1)一个类只能继承一个抽象类,而一个类可以实现多个接口。(2)访问权限不同,抽象类和普通类一样,而接口的访问权限是默认和public,接口成员都是public。(3)抽象类和
12、接口中的成员变量不同。(4)抽象类可包含抽象方法和普通方法,接口只能是抽象方法。6接口的作用(1)使用接口可以使设计与实现相分离,使使用接口的用户程序不受不同接口实现的影响,不受接口实现改变的影响。(2)弥补Java只支持类单继承的不足,它用来完成多继承的一些功能。Java接口反映了对象较高层次的抽象,为描述相互似乎没有关系的对象的共性提供了一种有效的手段。7接口的继承接口之间可以存在继承关系,但不能是实现关系。interface A void method1();interface B void method2();interface D extends A,B /合法interface E
13、 implements A,B /错误 【例8.6】/定义接口interface Animal void eat(); void sleep();interface Man extends Animal void think(); interface School void classroom();/定义抽象类Studentabstract class Student implements Man,School public abstract void study();/定义大学生类class Undergraduate extends Student String name; public
14、Undergraduate(String name) this.name=name; public void study() System.out.println(name+can study.); public void classroom() System.out.println(name+has classroom to study.); public void think() System.out.println(name+can think.); public void eat() System.out.println(name+can eat.); public void slee
15、p() System.out.println(name+can sleep.); void ablity() this.sleep(); this.eat(); this.think(); this.study(); this.classroom(); /定义测试类public class Exp86 public static void main(String args ) Undergraduate s=new Undergraduate(李平); s.ablity(); 运行结果:图8-4 例8.4运行效果图8接口的多态多态:同一个接口可以由多个类来实现,接口中的同一个方法在实现这个接口
16、的不同的类中可以有不同的具体实现。【例8.7】public interface A public static final int X = 1;public static final int Y = 2;public static final int Z = 3;public void show();class B implements A public void show() System.out.println(class B);class C implements A public void show() System.out.println(class C);8.4.2 List与Ar
17、rayListList包括List接口以及List接口的所有实现类。因为List接口实现了Collection接口,所以List接口拥有Collection接口提供的所有常用方法,又因为List是列表类型,所以List接口还提供了一些适合于自身的常用方法,如表8-1所示。表8-1 List接口相关方法方法名称功能简介add(int index,Object obj)用来向集合的指定索引位置添加对象,其他对象的索引位置相对后移一位,索引位置从0开始。addAll(int,Collection col)用来向集合的指定索引位置添加指定集合中的对象。remove(int index)用来清除集合中指
18、定索引位置的对象set(int index,Object obj)用来将集合中指定索引位置的对象修改为指定对象get(int index)用来获得指定索引位置的对象indexOf(Object obj)用来获得指定对象的索引位置。当存在多个时,返回一个索引位置;当不存在时,返回-1lastIndexOf(Object obj)用来获得指定对象的索引位置。当存在多个时,返回最后一个的索引位置;当不存在时,返回-12.实例化接口List接口提供的适合于自身的常用方法均与索引有关,这是因为List集合为列表类型,以线性方式存储对象,可以通过对象的索引操作对象。 List接口的常用实现类有ArrayL
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Java语言编程基础立体化实用教程 Java语言编程基础立体化实用教程教案2.2 学生成绩操作接口的实现 Java 语言 编程 基础 立体化 实用教程 教案 2.2 学生 成绩 操作 接口 实现
限制150内