课程5.4之函数的复写(override)

转发请注明出处:
安卓猴的博客(http://sunjiajia.com)

本节课程将学习以下内容:

  • 函数的复写(override)
  • 使用super调用父类的成员函数

函数的复写(override)

复写(override),也被称为覆盖或者重写。
在你对父类的成员方法不满意的时候,你可以在子类中复写这个方法,来写出符合自己要求的方法。

特点:

  • 1.在具有父子关系的两个类当中;
  • 2.子类和父类中各有一个函数,这个函数的定义(返回值类型,函数名和参数列表)完全相同,那么它们的关系就是复写。

使用super调用父类的成员函数

左右:

减少子类复写父类的成员方法时出现的重复代码。

例子:(请动手)

1.新建一个名为Person.java的Java源文件:

class Person{
  String name;
  int age;

  void introduce(){
    System.out.println("我的名字叫 " + this.name + ",我的年龄是 " + this.age);
  }
}

2.新建一个名为Student.java的Java源文件:

class Student extends Person{
  int grade;
  // 复写(override),也被称为覆盖或者重写
  void introduce(){
    // 使用super调用父类Person的成员函数;
    // 它不一定必须写在第一行。
    super.introduce();
    System.out.println("我的年级是 " + grade);
  }
}

3.新建一个名为Demo01.java的Java源文件:

class Demo01{
  public static void main(String[] args) {
    Student stu01 = new Student();
    stu01.name = "zhang3";
    stu01.age = 19;
    stu01.grade = 8;
    stu01.introduce();

    Person p1 = new Person();
    p1.name = "zhang3";
    p1.age = 19;
    p1.introduce();

  }
}
    原文作者:GitOPEN
    原文地址: https://www.jianshu.com/p/d5a487c1ed38
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞