《Java语言编程基础立体化实用教程》教案—1.4 学生成绩修改功能.docx
《《Java语言编程基础立体化实用教程》教案—1.4 学生成绩修改功能.docx》由会员分享,可在线阅读,更多相关《《Java语言编程基础立体化实用教程》教案—1.4 学生成绩修改功能.docx(16页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、山东理工职业学院单元教学过程设计首页课程所属院(部):软件工程学院 2019-2020学年 第一学期课程名称Java语言编程基础任课教师单元标题任务4 学生成绩的修改上课地点课时4授课班级授课时间第 周第 周第 周第 周第 周第 周星期 星期 星期 星期 星期 星期 第 节第 节第 节第 节第 节第 节月 日月 日月 日月 日月 日月 日教学目标能力目标知识目标1.能利用继承的思想编写程序1.类继承的实现,并能熟练进行应用。2不同修饰符的成员变量和成员方法的继承,并理解重写的含义。3super的含义及基本用法。教学任务进一步修改Menu类,更名为SMS类,并定义其成员方法:成绩输入功能add(
2、)方法、成绩修改功能做modify()方法。教学重、难点重点:类继承的实现难点:不同修饰符的成员变量和成员方法的继承,并理解重写的含义教学材料或用具教材、教案、课件、课程标准、案例素材及Eclipse开发软件课后任务编写一个程序,用于创建一个名为Employee的父类和两个名为Manager和Director的子类。Employee类包含3个属 性:name、basic和address。Manager类有一个称为department的附加属性。Director类有一个称为transportAllowance的附加属性。创建Manager和Director类的对象,并显示其详细信息。山东理工职业
3、学院单元教学过程设计步骤及时间教学内容教师活动学生活动5分钟5分钟60分钟90分钟20分钟【组织教学】1、检查学生出勤,作好学生考勤记录。2、课堂提问,了解学生掌握所学知识情况。3、强调课堂纪律,加强互动,活跃课堂气氛。【课题导入】通过前面任务的学习和练习,已经掌握了div和列表的基本知识,下面通过继续介绍div标签,让学生认识盒子模型、浮动和定位方式的知识。【新课讲授】4.4.1类的继承1创建子类格式:class 子类名 extends 父类名 属性定义; 方法定义; 说明:子类可以继承父类中访问控制为public、protected的成员变量和方法,如果子类和父类在同一个包的话,还可以继承
4、访问控制为default的成员变量和方法,并可以增加自己的属性和方法。如果不出现extends子句,则该类的父类为Object。2成员变量和方法的继承(1)继承父类的属性【例4.1】Student类继承Person类的属性(一)class Person String name=刘磊; int age=19; class Student extends Person String classname=软件141; int sno=23;public class Exp41 public static void main(String args) Person p1=new Person(); S
5、tudent s1=new Student(); System.out.println(父类的信息:); System.out.println(姓名:+p1.name+ 年龄:+p1.age); System.out.println(子类的信息:); System.out.println(姓名:+s1.name+ 年龄:+s1.age+ 班级:+s1.classname+ 学号:+s1.sno); 运行结果:父类的信息:姓名:刘磊 年龄:19子类的信息:姓名:刘磊 年龄:19 班级:软件141 学号:23【例4.2】Student类继承Person类的属性(二)class Person Str
6、ing name;int age;class Student extends Person String classname;int sno;public class Exp42public static void main(String args) Person p1 = new Person();p1.name = 刘磊;p1.age = 19;Student s1 = new Student();s1.classname = 软件141;s1.sno = 23;System.out.println(父类的信息:);System.out.println(姓名: + p1.name + 年龄
7、 + p1.age);System.out.println(子类的信息:);System.out.println(姓名: + s1.name + 年龄: + s1.age + 班级: + s1.classname + 学号: + s1.sno);运行结果:父类的信息:姓名:刘磊 年龄19子类的信息:姓名:null 年龄:0 班级:软件141 学号:23(2) 继承父类的方法【例4.3】继承父类的方法class Person String name;int age;void setName(String name) this.name = name;void setAge(int age) th
8、is.age = age;class Student extends Person String classname;int sno;void setClassname(String classname) this.classname = classname;void setSno(int sno) this.sno = sno;public class Exp43public static void main(String args) Person p1 = new Person();p1.setName(胡明月);p1.setAge(19);Student s1 = new Student
9、();s1.setName(蔡文静);s1.setAge(18);s1.setClassname(0801);s1.setSno(11);System.out.println(父类的信息:);System.out.println(姓名: + p1.name + 年龄: + p1.age);System.out.println(子类的信息:);System.out.println(姓名: + s1.name + 年龄: + s1.age + 班级: + s1.classname + 学号: + s1.sno);运行结果:父类的信息:姓名:胡明月 年龄:19子类的信息:姓名:蔡文静 年龄:18 班
10、级:0801 学号:11(3)子类和父类的成员同名 成员变量同名:在子类中父类的成员变量被隐藏,但在子类对象中仍然分配相应的存储空间,只是不可见。 成员方法同名:如果子类中的方法与父类中的方法具有相同的名称、参数表和返回值类型,则子类清除父类的同名成员方法,重写了父类的方法,否则可直接继承下来。【例4.4】class Person String name;int age;int weight=75; / 同名成员变量void setValue(String name, int age) / 同名成员方法this.name = name;this.age = age;class Student
11、extends Person String classname;int weight;void setValue(String name, int age, String classname, int weight) this.name = name;this.age = age;this.classname = classname;this.weight = weight;public class Exp43public static void main(String args) Person p1=new Person();p1.setValue(刘磊,19);System.out.pri
12、ntln(父类的信息:);System.out.println(姓名: + p1.name + 年龄: + p1.age+ 体重: + p1.weight);Student s1=new Student();System.out.println(子类的信息:);System.out.println(姓名: + s1.name + 年龄: + s1.age + 班级: + s1.classname + 体重: + s1.weight);s1.setValue(刘磊,19,软件161,65);System.out.println(子类的信息:);System.out.println(姓名: + s
13、1.name + 年龄: + s1.age + 班级: + s1.classname + 体重: + s1.weight); 运行结果:父类的信息:姓名:刘磊 年龄:19 体重:75子类的信息:姓名:null 年龄:0 班级:null 体重:0子类的信息:姓名:刘磊 年龄:19 班级:软件161 体重:65【注意】(1) 继承是与传统方法不同的一个最具特色的方法,用以实现代码的复用。(2) 两个类之间的一种关系,即一个类可以从另一个类(即它的父类)继承状态和行为。被继承的类也可称为超类(父类),继承父类的类称为子类。Object类是Java中所有类的超类,Java中的类都是直接或间接由Obje
14、ct类派生而来。(3)类的继承是用关键字extends说明的,一次只能继承一个类,即单重继承。 (4)子类永远不会继承父类的构造方法。除了构造方法之外,父类的所有的非private方法和属性都由子类的对象继承,包括静态的。(5)子类在继承的基础上可以增加自己的属性和方法。(6)子类中的成员变量同父类的成员变量同名,称父类的成员变量被隐藏。4.4.2 super关键字super表示当前对象的直接父类对象,是当前对象的直接父类对象的引用。使用方式:方式一:super.数据成员 /子类访问父类同名成员变量方式二:super.成员方法(参数) /子类访问父类同名成员方法方式三:super(参数) /调
15、用父类的构造方法1方式一:super.数据成员【例4.5】class Person String name;int age;int weight; / 同名成员变量void setValue1(String name, int age, int weight) this.name = name;this.age = age;this.weight = weight;class Student extends Person String classname;int weight;void setValue2(String name, int age, String classname, int
16、weight) this.name = name;this.age = age;this.classname = classname;this.weight = weight;void show() System.out.println(同名成员变量n父类: + super.weight + , 子类: + weight);public class Exp44public static void main(String args) Person p1=new Person();Student s1=new Student();p1.setValue1(刘磊, 19, 65);s1.setVal
17、ue2(蔡文静, 21, 软件161,70);s1.show(); 运行结果:同名成员变量父类:0, 子类:702方式二:super.成员方法(参数)【例4.6】class Person String name; int age; void setValue(String name,int age) /思考setValue是同名方法,还是方法重写? this.name=name; this.age=age; /*class Student extends Person String classname; int sno; void setValue(String name,int age,St
18、ring classname,int sno) this.name=name; this.age=age; this.classname=classname; this.sno=sno; */以上Student定义等价于下面Student定义class Student extends Person String classname; int sno; void setValue(String name,int age,String classname,int sno) setValue(name,age);/等价于super.setValue(name,age); this.classname
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Java语言编程基础立体化实用教程 Java语言编程基础立体化实用教程教案1.4 学生成绩修改功能 Java 语言 编程 基础 立体化 实用教程 教案 1.4 学生 成绩 修改 功能
限制150内