⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 abstractkey.cs

📁 我的一个Ado.Net一个框架设计
💻 CS
字号:
using System;
using System.Collections.Generic;
using System.Text;

namespace ConsoleTest
{
    public abstract class Person
    {
        public abstract  string GetName(int age);//抽象方法必须包含在抽象类中,且没有方法体
        public int GetAge(string name)//抽象类中可以包含非抽象方法
        {
            if (name == "xuzhiqiang")
            {
                return 28;
            }
            else
                return 18;
        }
    }
    public class Student :Person
    {
        public Student()
        {
            Console.WriteLine("Person---------");
        }
        public override string GetName(int age)//基类中的抽象方法GetName是隐式的虚virtual方法,所以派生类中需要Override,但是不能用new
        {
            if (age == 28)
                return "Person";
            else
                return "PersonTest";
        }
    }
    public class BigPerson : Student
    {
        public BigPerson()
        {
            Console.WriteLine("BigPerson-------------");
        }
        //利用sealed关键字说明该方法要重写基类中的方法,且该方法在以后的派生类中不许在Override,注意:sealed必须与override 一起使用,
        //如sealed override

        public sealed override string GetName(int age)
        {
            if (age == 30)
            {
                return "BigPerson";
            }
            else
            {
                return "bigperson";
            }
        }
    }
    //类前加sealed说明该类是密封类,也就意味着该类不能被继承
    public sealed class LittlePerson : BigPerson
    {
        public LittlePerson()
            :base()
        {
            base.GetName(28);
        }
    }
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -