• c#学习_第四弹


    一些知识老忘,说不上是太零碎,还是老了记性不好…

    一:抽象类和抽象方法

    1、抽象方法必须声明在抽象类中,抽象类中不仅可以有抽象方法,还可以有其他方法。
    2、抽象类不能被实例化(不能new)。
    3、子类必须重写所有的抽象方法。
    4、父类中的抽象方法能不被子类调用(抽象方法只是一个样子没有实际作用)。
    5、抽象类中也可以有构造函数。

    二:XmlIgnore

    三:声明的可访问性

    声明的可访问性含义
    public访问不受限制
    protected访问限于包含类或派生自包含类的类型
    internal访问限于当前程序集
    protected internal访问限于当前程序集或派生自包含类的类型
    private访问限于包含类
    private protected访问限于包含类或当前程序集中派生自包含类的类型。 自 C# 7.2 之后可用

    四:获取指定目录下文件

    SearchOption.TopDirectoryOnly //当前目录
    SearchOption.AllDirectories //当前目录的所有子目录

    /// 
    /// 获取当前目录中指定类型所有文件信息
    /// 
    /// 当前目录
    /// 扩展名数组
    private FileInfo[] GetFilesByDirectory(string directory, IEnumerable<string> extension)
    {
        var di = new DirectoryInfo(directory);
        const string start = "*";
        var lst = extension.Select(s => start + s).ToList();
        return lst.SelectMany(i => di.GetFiles(i.ToLower(),SearchOption.TopDirectoryOnly)).Distinct().ToArray();
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12

    五:IsAssignableFrom

    bool res = (TypeA).IsAssignableFrom(TypeB);
    如果TypeA和TypeB类型一样则返回true;
    如果TypeA是TypeB的父类则返回true;
    如果TypeB实现了接口TypeA则返回true。

    六:Assembly.Load()、Assembly.LoadFrom()和Assembly.LoadFile()的区别

    七:UITypeEditor是干嘛的

  • 相关阅读:
    基于PaddlePaddle平台训练物体分类——猫狗分类
    面试官:设计模式中的适配器模式是什么?
    bootz 启动 kernel
    Web前端开发PDF:技术与挑战的深度剖析
    视频监控智能识别
    让reviewdog支持gitlab-push-commit,守住代码质量下限
    软考 系统架构设计师系列知识点之云计算(2)
    房产网源码 房产中介小程序源码 房产门户网站源码
    SpringBoot使用AOP详解
    Java8实战-总结30
  • 原文地址:https://blog.csdn.net/zzyzxb/article/details/126558289