zoukankan      html  css  js  c++  java
  • 覆盖

    如何用子类的成员覆盖基类的成员。

    Fruit 类

    using UnityEngine;
    using System.Collections;
    
    public class Fruit 
    {
        public Fruit ()
        {
            Debug.Log("1st Fruit Constructor Called");
        }
    
        //这些方法是虚方法,因此可以在子类中
        //将它们覆盖
        public virtual void Chop ()
        {
            Debug.Log("The fruit has been chopped.");        
        }
    
        public virtual void SayHello ()
        {
            Debug.Log("Hello, I am a fruit.");
        }
    }

    Apple 类

    using UnityEngine;
    using System.Collections;
    
    public class Apple : Fruit 
    {
        public Apple ()
        {
            Debug.Log("1st Apple Constructor Called");
        }
    
        //这些方法是覆盖方法,因此
        //可以覆盖父类中的任何
        //虚方法。
        public override void Chop ()
        {
            base.Chop();
            Debug.Log("The apple has been chopped.");        
        }
    
        public override void SayHello ()
        {
            base.SayHello();
            Debug.Log("Hello, I am an apple.");
        }
    }

    FruitSalad 类

    using UnityEngine;
    using System.Collections;
    
    public class FruitSalad : MonoBehaviour 
    {    
        void Start () 
        {
            Apple myApple = new Apple();
    
            //请注意,Apple 版本的方法
            //将覆盖 Fruit 版本。另外请注意,
            //由于 Apple 版本使用“base”关键字
            //来调用 Fruit 版本,因此两者都被调用。
            myApple.SayHello();
            myApple.Chop();    
    
            //“覆盖”在多态情况下也很有用。
            //由于 Fruit 类的方法是“虚”的,
            //而 Apple 类的方法是“覆盖”的,因此
            //当我们将 Apple 向上转换为 Fruit 时,
            //将使用 Apple 版本的方法。
            Fruit myFruit = new Apple();
            myFruit.SayHello();
            myFruit.Chop();
        }
    }
  • 相关阅读:
    Oracle中查看建立索引和使用索引的注意点
    一个父亲的教育札记——leo鉴书58
    puma 配置,启动脚本
    HDU 6003 Problem Buyer
    c# 类间关系
    前台线程和后台线程总结
    多线程学习进程
    进程类的使用
    c#异步编程
    【程序17】
  • 原文地址:https://www.cnblogs.com/Mr-Prince/p/14142102.html
Copyright © 2011-2022 走看看