Java的继承与多态(二)解说.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
QA Thanks 第7讲 Java的继承与多态(二) 方法覆盖 superthis关键字 final关键字 Object类 多态的定义与作用 构造方法的重载 */ 教学目标 掌握super关键字的意义及使用方法 掌握final关键字的意义及使用方法 理解Object类的作用及其常用方法 了解多态的意义 掌握重载的使用方法 super 关键字的使用 在Java的覆盖机制中,子类中的同名成员变量或方法隐藏了超类的成员变量或方法,如果在子类中,希望使用父类中的那些被子类覆盖的成员或方法,就需要借助于super这个关键字。另外,若在子类中调用父类的构造方法,也需要利用super实现。 super使用方法如下: super.成员变量名称 //使用父类的成员变量 super.方法名称(参数列表) //使用父类的方法 this关键字的使用 super——用来表示直接父类。 this——访问当前对象。 当在一个类中要明确指出使用当前对象本身的变量或方法时,就可以使用this关键字代表当前类。 this的另一个用途是调用当前对象的另一个构造方法。假如一个类中定义了几个构造方法,可以使用this关键字引用当前类中定义的其他构造方法。 this使用方法如下: this.成员变量名称 //使用自身成员变量 this.方法名称(参数列表) //使用当前类的方法 class Person { // 定义Person类 protected String name; //姓名 protected String sex; //性别 protected int age; //年龄 public void register(String n,String s,int a) { //设置数据成员 name=n; sex=s; age=a; } public void showMe() { //显示人员信息 System.out.println(姓名:+name+,性别:+sex+,年龄:+age); } } 类Person中定义了3个成员和2个方法register()和showMe()。在方法showMe()中,可以使用this.name来替换name,this代表Person类对象本身。 superthis示例 class Student extends Person { private String department; //系别 private String specialty; //专业 public void studentRegister(String n,String s,int a,String dep, String spe) { super.register(n,s,a); //调用父类方法 this.department=dep; //访问自身成员变量 this.specialty=spe; //访问自身成员变量 } public void showStudent () { //显示学生类数据成员 System.out.println(姓名:+super.name+,性别: + super.sex+ ,年龄: +super.age+ ,系别: +this.department + ,专业:+this.specialty); } } 方法studentRegister()中,使用super表示父类对象,super.register()即调用了父类对象方法register();使用this表示当前类对象,this.department即引用了当前类对象成员department。 superthis示例(续) public class Ex6_4{ public static void main(String args[]) { Student student1=new Student(); student1.studentRegister(张三,男,18,计算机,软件开发); student1.showStudent(); } } 运行结果: 姓名:王兰,性别:女,年龄:16 姓名:张三,性别:男,年龄:18,系别:计算机,专业:软件开发 程序分析: Student类中使用super.register()的方式访问父类中定义的register()方法,而访问本身的数据成员,则通过this关键字实现。通常,this关键字可以省略。使用

文档评论(0)

a336661148 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档