unity游戲開發(fā)-C#語言基礎(chǔ)篇(面向?qū)ο?多態(tài)_虛函數(shù)帶參和不帶參構(gòu)造函數(shù))

    class Program
    {
        static void Main(string[] args)
        {
            //有一個交通工具類Vehicle,將它作為基類派生小車類Car、卡車類Truck和輪船類Boat,定義這些類并定義一個虛函數(shù)用來顯示各類信息。



            Vehicle vehicle = new Vehicle("交通工具", 8, 8);
            Truck truck = new Truck("東風(fēng)", 18, 18);
            Car car = new Car("小汽車", 28, 28);
            Boat boat = new Boat("輪船", 38, 38);
            truck.ShowMsg();
            car.ShowMsg();
            boat.ShowMsg();
            vehicle.ShowMsg();

         

        }
    }
    class Boat:Vehicle
    {
        public Boat(string _name, int _jiage, int _speed)
            : base(_name, _jiage, _speed)
        {

        }
        public override void ShowMsg()
        {
            Console.WriteLine("輪船{0},價格{1},速度{2}", Name, Jiage, Speed);
        } 
    }
   class Car:Vehicle
    {
        public Car(string _name, int _jiage, int _speed)
            : base(_name, _jiage, _speed)//base 有參數(shù)就執(zhí)行父類的有參數(shù)構(gòu)造函數(shù) 沒有就默認(rèn)執(zhí)行父類沒有參數(shù)的構(gòu)造函數(shù)
        {

        }
        public override void ShowMsg()
        {
            Console.WriteLine("汽車{0},價格{1},速度{2}", Name, Jiage, Speed);
        }
    }
  class Truck:Vehicle
    {
        public Truck(string _name, int _jiage, int _speed)
            : base()
        {
            this.Name = _name;
            this.Jiage = _jiage;
            this.Speed = _speed;
        }
        public Truck(string _name, int _jiage, int _speed)
            : base(_name, _jiage, _speed)
        {

        }

        public override void ShowMsg()
        {
            Console.WriteLine("卡車{0},價格{1},速度{2}", this.Name, this.Jiage, this.Speed);
        }
    }
 class Vehicle
    {
        private string name = "1";
        private int jiage;
        private int speed;

        public string Name
        {
            get { return name; }
            set { name = value; }
        }


        public int Jiage
        {
            get { return jiage; }
            set
            {
                if (value > 0)
                {
                    jiage = value;

                }
                else
                {
                    Console.WriteLine("價格有誤!");
                }
            }
        }


        public int Speed
        {
            get { return speed; }
            set { speed = value; }
        }

        public Vehicle(string _name, int _jiage, int _speed)
        {

            this.name = _name;
            this.jiage = _jiage;
            this.speed = _speed;

        }

        public Vehicle()
        {
            this.ShowMsg();
        }


        public virtual void ShowMsg()
        {
            Console.WriteLine("交通工具{0},售價{1},速度{2}", Name, Jiage, Speed);

        }


    }
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容