1、山东理工职业学院单元教学过程设计首页课程所属院(部):软件工程学院 20192020学年 第一学期课程名称Java语言编程基础任课教师单元标题任务5 学生成绩的删除上课地点学时4授课班级授课时间第 周第 周第 周第 周第 周第 周星期 星期 星期 星期 星期 星期 第 节第 节第 节第 节第 节第 节月 日月 日月 日月 日月 日月 日教学目标能力目标知识目标1.能掌握类的创建和使用1.面向对象的编程思想及特征,与面向过程的简单区别。2类定义的形式、变量和方法的定义及引用。3什么是对象,掌握对象创建的格式和使用的方法。4方法重载的定义及应用。5构造方法的含义与功能,this的用法。教学任务增加
2、delete()方法教学重、难点重点:类的创建和使用难点:类的创建和使用教学材料或用具教材、教案、课件、课程标准、案例素材及Eclipse开发软件课后任务1、编写一个学生类,描述学生的学号、姓名、成绩。学号用整型,成绩用浮点型,姓名用String类型,编写一个测试类,用对象数组定义5个对象,输入和输出学生信息(要求:把两个类放在不同的包中)。2、在上题的基础上,把属性设置为private,利用set*()和get*()方法设置属性值和获取属性值,并把该对象的信息输出。3、设计学生成绩管理系统。山东理工职业学院单元教学过程设计步骤及时间教学内容教师活动学生活动5分钟5分钟60分钟90分钟20分钟
3、【组织教学】1、检查学生出勤,作好学生考勤记录。2、课堂提问,了解学生掌握所学知识情况。3、强调课堂纪律,加强互动,活跃课堂气氛。【课题导入】任务1.1用记事本完成了代码设计,但是还无法看到代码执行后的效果。任务二是在任务一的基础上,利用Java语言的开发工具运行该程序,并得到运行结果。在此过程中,需要了解开发工具的使用方法、文件建立的方法、代码的编写、存储,以及程序的运行过程。【讲授新课】5.4.1类和成员的修饰符1访问修饰符:public、protected、default、privatepublic:公共的,可用于修饰类、成员变量和成员方法。权限:访问不受限制,本包和其它包均可访问。pr
4、otected:受保护的,可用于修饰成员变量和成员方法。权限:同包或其它包中的继承类可访问。default:缺省,可用于修饰类、成员变量和成员方法。权限:同包中的类访问。private:私有,可用于修饰成员变量和成员方法。修饰符private用于修饰成员变量和成员方法,用于提高代码的安全性,被修饰的内容只限于本类中访问,若类外引用该成员 变量和成员方法需要借助一些方法来实现: getXXX():获取属性值。 setXXX():为属性赋值。Java语言中有各种不同作用的修饰符,修饰符在不同的包中的访问权限是不一样的,详见表5-1。表5-1 Java修饰符访问权限序号关键字类变量方法接口说明1de
5、fault可被同一package中的类存取。2public可被别的package中的类存取。3final不能有子类,方法不能被重写,变量为常量。4abstract类必须被扩展,方法必须被覆盖。5private方法、变量只能在此类中被访问。6protected方法或变量能被同一package中的类访问,以及被其他package中该类的子类访问。7static定义成员变量及类方法。8synchronized在某一时刻,只有一个被该修饰符修饰的方法在执行。【例5.1】default的使用class DefaltClass int x; int y; DefaltClass(int x,int y)
6、System.out.println(缺省类的构造方法!); this.x=x; this.y=y; int add() return this.x+this.y; public class Exp51 public static void main(String args) DefaltClass o1=new DefaltClass(3,5); System.out.println(o1.x=+o1.x); System.out.println(o1.y=+o1.y); System.out.println(x+y=+o1.add(); 运行结果:缺省类的构造方法!o1.x=3o1.y=5
7、x+y=8【例5.2】找出下面程序中的错误class DefaltClass private int x;private int y;DefaltClass(int x, int y) System.out.println(缺省类的构造方法!);this.x = x;this.y = y;class Exp52public static void main(String args) DefaltClass o1 = new DefaltClass(3, 5);o1.x = 5;System.out.println(o1.x= + o1.x);System.out.println(o1.y= +
8、 o1.y);【知识拓展】5.6.1 static关键字Java中的非访问修饰符(存在修饰符):abstract、static、final。其中static称为静态修饰符,可用来修饰属性、方法和代码块。1静态属性被static修饰的属性称为静态属性,它被所有对象共享,也称为类变量。它在类被载入时创建,类存在,类变量就存在。对于类的任何一个具体对象,静态属性是一个公共的存储单元,被所有对象共同使用。访问静态属性有两种方式:(1)直接访问:类名.属性(2)实例化后访问:对象名.属性【例5.3】静态属性class Studentstatic String school;public class Ex
9、p53 public static void main(String args) Student s1=new Student();/创建第1个学生对象Student s2=new Student();/创建第2个学生对象Student.school=山东理工职业学院;System.out.println(我的母校是+s1.school);/输出第1名同学的母校System.out.println(我的母校是+s2.school);/输出第2名同学的母校运行结果:我的母校是山东理工职业学院我的母校是山东理工职业学院2静态方法被static修饰的方法称为静态方法,静态方法可以直接通过类名调用,任
10、何实例对象也都可以调用。访问静态方法有两种方式:(1)直接访问:类名.方法(2)实例化后访问:对象名.方法【注意】(1)静态方法中只能直接访问静态成员,不能直接访问非静态成员。(2)静态方法中不能直接调用非静态方法,需要通过实例化对象来访问非静态方法。(3)静态方法中不能以任何方式引用this或super。【例5.4】静态方法class Studentpublic static void study() System.out.println(学习中.);public class Exp54 public static void main(String args) /用“类名.方法名”调用静态方
11、法Student.study();Student stu=new Student();/创建学生对象/用“实例名.方法名”调用静态方法stu.study();运行结果:学习中.学习中.3静态代码块静态代码块是在类中被static修饰的,不包含在任何方法体中的代码块。当类被加载时,静态代码块会被执行,且只执行一次,如果有多个代码块,会按照它们在类中出现的先后顺序依次执行。静态代码块的格式:static/程序代码块5.6.2 final关键字final:无法改变的,可修饰变量、方法和类。1final修饰变量用final修饰的属性和局部变量是常量,只能赋值一次。【例5.5】public class
12、Exp55 public static void main(String args) final int score=52;/第一次可以赋值m=61;/再次赋值会报错运行结果:程序存在错误,final修饰的变量是常量,只能赋值一次。【例5.6】public class Exp56 final int num;/final修饰的成员变量,必须在声明的同时进行赋值,否则编译错误public static void main(String args) final int score;/final修饰的局部变量,可以先声明,后赋值score=61;运行结果:final修饰的成员变量,必须在声明的同时进
13、行赋值,否则编译错误。2final修饰方法用final修饰的方法不能被子类重写。要注意的是,所有被private修饰的私有方法以及包含在final类中的方法,都被缺省的认为是final方法。【例5.7】final class Flower/使用final关键字修饰perfume方法public final void perfume() class Lily extends Flower/提示错误,无法重写父类final方法/重写Flower类的perfume方法public void perfume() public class Exp57 public static void main(St
14、ring args) Lily lily1=new Lily();/创建Lily类的实例对象运行结果:提示错误,无法重写父类final方法。3final修饰类用final修饰的类,即终极类,不能有子类,不能被继承。【例5.8】/用final修饰Flower类final class Flowerclass Lily extends Flower/提示错误,无法从最终类Flower类继承public class Exp58 public static void main(String args) Lily lily1=new Lily();/创建Lily类的实例对象运行结果:提示错误,无法从最终类
15、Flower类继承。 【技能训练】一、任务分析操作步骤如下:步骤一:分析SMS的各成员方法;步骤二:为SMS类增加delete()方法。二、任务实施任务概览:public class Studentpublic class SMS menu();/主菜单 add();/添加学生信息 select();/显示本次录入学生信息 modify();/修改学生信息delete();/删除学生信息writeFile ();/ 将确认无误的学生信息写入txt文件 judge();/判断本次是否录入了学生信息main();步骤一:分析SMS的各成员方法; 根据任务概览,分析SMS类中各方法及功能。步骤二:为
16、SMS类增加delete()方法。public void delete() throws IOException this.judge();int j = 0, t = 0, k = 0;String sno;char ch;String str;System.out.println(请输入要删除的学号:);sno = In.next();for (j = 0; j n; j+) if (sj.getSno().equals(sno) k = 1;t = j;if (k = 0) System.out.println(对不起!你要删除的学号不存在!);System.out.println(系统
17、将返回主菜单!);this.menu();if (k = 1) System.out.println(你要删除的学生信息如下:); / 打印要删除的学生信息System.out.println(学号t姓名t班级t SQL t Java t web t gym);System.out.println(st.getSno() + + st.getName() + + st.getClassname() + t + st.getSql() + t + st.getJava() + t + st.getWebdesign() + t + st.getGym();System.out.println()
18、;System.out.println(你确定要删除(Y/N):);str = In.next();ch = str.charAt(0);while (ch != Y & ch != y & ch != N & ch != n) System.out.println(输入无效,请重新输入:);str = In.next();ch = str.charAt(0);if (ch = N | ch = n) System.out.println();System.out.println(系统返回主菜单!);this.menu();if (ch = Y | ch = y) for (j = t; j
19、n - 1; j+) sj = sj + 1;System.out.println(sj.getSno();n-;System.out.println(学生成绩成功删除!);System.out.println(系统返回主菜单!);this.menu();三、分组练习按班级人数分成小组,小组内成员合作完成相应的任务。四、巡回指导精确操作步骤,指导学生,及时解决学生在上机过程中遇到的问题。【任务总结】 1、学生完成的课堂任务总结。2、本节课知识点提问。【布置作业】1、编写一个学生类,描述学生的学号、姓名、成绩。学号用整型,成绩用浮点型,姓名用String类型,编写一个测试类,用对象数组定义5个对
20、象,输入和输出学生信息(要求:把两个类放在不同的包中)。2、在上题的基础上,把属性设置为private,利用set*()和get*()方法设置属性值和获取属性值,并把该对象的信息输出。3、设计学生成绩管理系统。组织教学任务导入课件演示案例操作讲解指出学习重点和难点操作演示仔细讲解制作此任务的每一个步骤适当提问对学生提出的问题给于指导展示任务细致操作每一个步骤,指出易错的具体操作步骤巡回指导配合教师组织教学聆听互动聆听简单记录重要知识点、回答提问,观看并记忆各元素用法记录并记忆回答教师提出的疑问记忆代码含义上机实践操作任务、自主探究和小组协作提出疑问配合回答提问利用课上剩余时间或课下时间完善任务
侵权处理QQ:3464097650--上传资料QQ:3464097650
【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。