关键词搜索

源码搜索 ×
×

2020-12-13

发布2020-12-13浏览260次

详情内容

Protected 在基类中定义后,能被派生类调用,但是不能被其他类c#教程调用。

virtual 在基类中定义后,在派生类中能被重写。

using System;
using System.Collections.Generic;
using System.Text;

namespace 继承
{
    class Vertebrate
    {
        protected string spine;//受保护的字段
        private double weigth;
        private double temperature;
        public double Weigth
        {
            set
            {
                if (value < 0)
                {
                    weigth = 0;
                }
                else
                {
                    weigth = value;
                }
            }
            get { return weigth; }
        }
        public double Temperature
        {
            set
            {
                if (value < 0)
                {
                    temperature = 0;
                }
                else
                {
                    temperature = value;
                }
            }
            get { return temperature; }
        }
        public Vertebrate()
        {
            spine = "脊柱";
            weigth = 0;
            temperature = 0;
        }
        public virtual  void Breate() //虚方法
        {
            Console.WriteLine("呼吸");
        }
        public void Sleep()
        {
            Console.WriteLine("睡觉");
        }
    }
}
    using System;
    using System.Collections.Generic;
    using System.Text;
    
    namespace 继承
    {
        class Program
        {
            static void Main(string[] args)
            {
                Vertebrate vertebrate = new Vertebrate();
                vertebrate.spine1 = "脊柱"; //public的就能被直接调用
                Mammal mammal = new Mammal();
                Fish fish = new Fish();
                Animal animal = new Animal();
                Console.WriteLine("我是一只哺乳动物");
                mammal.Scukle();
                animal.Breate();
                mammal.Breate();
                fish.Breate();
                mammal.Sleep();
                mammal.Message();
            }
        }
        class Fish : Vertebrate
        {
            public override void Breate()//重写基类中的虚方法
            {
                Console.WriteLine("用鳃呼吸");
            }
        }
        class Animal : Vertebrate
        {
    
        }
        class Mammal : Vertebrate//派生类:基类
        {
            private string arms;
            private string legs;
            private int age;
            public int Age
            {
                set { age = value; }
                get { return age; }
            }
            public Mammal()
            {
                arms = "前肢";
                legs = "后肢";
                Age = 0;
                Weigth = 10;
                Temperature = 37;
            }
            public void Scukle()
            {
                Console.WriteLine("哺乳");
            }
            public override void Breate()
            {
                Console.WriteLine("用肺呼吸");
            }
            public void Message()
            {
                Console.WriteLine("体重:{0}", Weigth);
                Console.WriteLine("年龄:{0}", Age);
                Console.WriteLine("体温:{0}", Temperature);
                Console.WriteLine("我有{0}和{1}", arms, legs);
            }
        }
    }
    
      58
    • 59
    • 60
    • 61
    • 62
    • 63
    • 64
    • 65
    • 66
    • 67
    • 68
    • 69
    • 70

    相关技术文章

    点击QQ咨询
    开通会员
    返回顶部
    ×
    微信扫码支付
    微信扫码支付
    确定支付下载
    请使用微信描二维码支付
    ×

    提示信息

    ×

    选择支付方式

    • 微信支付
    • 支付宝付款
    确定支付下载