Keep on going never give up.

Let's Go

C# 学习笔记(28)密封类与部分类

C#Lonely2019-05-10 15:30:3043次0条

密封类

C#中的密封类使用 sealed 关键字来修饰,密封类是不能被继承的,但密封类可以去继承别的类。当有的类不想被人继承时,我们可以将它写成密封类。

代码示例:

namespace ConsoleApp
{
    class Program
    {
        static void Main(string[] args)
        {
        }
    }
    
    /// <summary>
    /// 这是一个密封类
    /// </summary>
    public sealed class MyClass
    {
        //密封类不能被继承
    }
    
}


部分类

部分类使用 partial 关键字来修饰,部分类的作用是可以在多个文件中声明同一个类, 主要用于类比较大的时候进行拆分。不要以为部分类是定义了多个类,其实还是一个类,只是把这个类拆分了。 在程序运行的时候编译器会把这个类合并在一起的, 这样做的好处是,当你有一个类很大的时候你可以按实现功能拆分在不同的文件中,这样就方便阅读和修改了。

partial关键字的作用传送门

下面创建3个.cs文件,分别是 PrimarySchool.cs、MiddleSchool.cs、University.cs,三个文件中都是在声明同一个类 School。

PrimarySchool.cs代码示例:

using System;

namespace ConsoleApp
{
    partial class School
    {
        public void ShowPrimarySchool()
        {
            Console.WriteLine("小学");
        }
    }
}

MiddleSchool.cs代码示例:

using System;

namespace ConsoleApp
{
    partial class School
    {
        public void ShowMiddleSchool()
        {
            Console.WriteLine("中学");
        }
    }
}

University.cs代码示例:

using System;

namespace ConsoleApp
{
    partial class School
    {
        public void ShowUniversity()
        {
            Console.WriteLine("大学");
        }
    }
}

Program.cs代码示例:

using System;

namespace ConsoleApp
{
    class Program
    {
        static void Main(string[] args)
        {
            School school = new School();
            school.ShowPrimarySchool();  //输出小学
            school.ShowMiddleSchool();   //输出中学
            school.ShowUniversity();     //输出大学
            Console.ReadKey();
        }
    }
}




暗锚,解决锚点偏移

文章评论

    嘿,来试试登录吧!