虚函数和抽象函数概述示例

虚函数 和 抽象函数

虚函数创建时即有代码,但允许子类覆盖,子类可以选择重写或者沿用父类虚函数。

1.在类中使用虚函数:

在父类中已经有了实际代码,但明确子类可以重写。

当子类重写时,可以用子类实例父类;父类函数调用虚函数时将执行子类的方法

2.在类中用抽象函数:

在父类里不确定函数的代码,需要让子类去实现。

子类必须重写父类抽象函数,父类抽象函数中没有方法体。

接口中的函数类类似于抽象函数,实现接口的类必须实现这些函数

接口可以用于多继承,一个类只能继承自一个父类,但能实现多个接口

Java 示例:

定义父类 Employee

public class Employee {
    String name;
    int salary;
    int age;

    public String getName(){
        return this.name;
    }

    public int getSalary(){
        return this.salary;
    }

    public int getAge(){
        return this.age;
    }
    
         /**
     * 父类定义方法 say();
     */

    public String say(){
        return "Say hello.";
    }

}

定义子类 Manager 继承自父类 Employee

public class Manager extends Employee{

    /**
     * 子类重写父类方法 say();
     */
    public String say(){
      return "say manager.";
    }

    /**
     *
     * 子类调用父类方法 say();
     */
    public String getSuper(){
        return super.say();
    }
}

调用情况及其返回

System.out.println(manager.say()); //调用子类的say();
System.out.println(manager.getSuper()); //子类调用父类的say();
say manager.
Say hello.
posted @ 2022-07-20 17:16  ShadowMurloc  阅读(86)  评论(0)    收藏  举报