2.不能使用 new、static 或 ]virtual 修飾詞寫在同一行
3.public virtual void Car_1(){} 只能修改成 public override void Car_1(){} 不能改成public override void Car_1(int x){}
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class Exercisc : MonoBehaviour
{
void Start()
{
Car Car_A = new Car();
Car Car_B = new Truck();
Car Car_C = new Bus();
Truck Truck_A = new Truck();
Bus Bus_A = new Bus();
Car_A.Buy_Car();//買了一台車,賣掉了一台車
Car_B.Buy_Car();//買了一台車,賣掉了一台車
Car_C.Buy_Car();//買了一台車,賣掉了一台公車
Truck_A.Buy_Car();//買了一台卡車,賣掉了一台卡車
Bus_A.Buy_Car();//買了一台車,賣掉了一台公車
Car_A.Sell_Car();//賣掉了一台車
Car_B.Sell_Car();//賣掉了一台車
Car_C.Sell_Car();//賣掉了一台公車
Truck_A.Sell_Car();//賣掉了一台卡車
Bus_A.Sell_Car();//賣掉了一台公車
}
public class Car
{
public void Buy_Car()
{
Debug.Log("買了一台車");
Sell_Car();
}
public virtual void Sell_Car()
{
Debug.Log("賣掉了一台車");
}
}
public class Truck : Car
{
new public void Buy_Car()
{
Debug.Log("買了一台卡車");
Sell_Car();
}
new public void Sell_Car()
{
Debug.Log("賣掉了了一台卡車");
}
}
public class Bus : Car
{
public override void Sell_Car()
{
Debug.Log("賣掉了了一台公車");
}
}
}