美文网首页
17.03.11 .Net基础(二)

17.03.11 .Net基础(二)

作者: CH小猫 | 来源:发表于2017-03-12 08:07 被阅读10次
    多态
    • 虚方法 virtual override
    • 抽象类 abstract override
    • 接口 interface

    多态就是指不同对象收到相同消息时,会产生不同行为,同一个类在不同场合下表现出不同的行为特征.

    接口
    • 接口是一种能力
    • 接口是一种规范
    • 接口功能要单一
    • 显式实现接口(接口.函数)
    访问修饰符
    • public 在哪都可以访问
    • private 私有的,只能在当前类的内部进行访问
    • internal 只能在当前程序集中访问
    • protected 受保护的,可以在当前类以及该类的子类中访问
    • 注意点:
      1. 能够修饰类的访问修饰符只有两个:public和internal(默认就是internal)
      2. 在同一个项目中,public的权限跟internal是一样的
      3. 子类的访问权限不能高于父类的访问权限
    静态和非静态
    • 静态成员:被static修饰
    • 实例成员:不被static修饰
    • 静态成员先于实例成员被加载到内存中,只有创建了对象,才有实例成员.
    • 静态类中只能存在静态成员.
    • 什么时候使用静态(作为工具类,在整个项目中资源共享)
    设计模式之单例模式

    在整个程序中,我们要保证对象必须是唯一的
    实现:

    1. 构造函数私有化
    2. 声明一个静态字段,作为全局唯一的单例对象
    3. 声明一个静态函数,返回全局唯一的对象
    设计模式之简单工厂设计模式

    核心:把所有的子类都当做父类来看待

    值类型和引用类型
    • 值类型:int double char bool decimal struct enum
    • 引用类型:string 数组 自定义类 接口 委托
    • 值类型的值存储在内存的栈上,引用类型的值存储在堆中.栈上存储数据的效率要高于堆.
    • 值传递:把值类型作为参数传递,把值本身进行传递.(** 注意:ref可以把值传递改变为引用传递 **)
    • 引用传递:把引用传递的值作为参数传递,传递的是引用
    常用类库String
    重要特性
    • 不可变性
    • 驻留池特性
    常用属性及方法
    • 属性
      length //获得字符串中字符的个数
    • 方法
      ** isNullOrEmpty() 静态方法,判断为null或者为""(静态方法) **
      ToCharArray() 将string转换为char[]
      ToLower() 小写,必须接收返回值
      ToUpper() 大写
      Equals() 比较两个字符串是否相同.(忽略大小写的比较,StringComparation)
      ** IndexOf() 如果没有找到对应的数据,返回-1 **
      ** LastIndexOf() 如果没有找到对应的数据,返回-1 **
      ** Substring() 截取字符串 **
      Split() 分割字符串
      Join() 静态方法,加入
      Replace() 替换
    常用类库 StringBuilder

    StringBuilder仅仅是拼接字符串的工具,大多数情况下还需要把StringBuilder转换为String

    • 常用函数
    StringBuilder sb = new StringBuilder();
    sb.Append(); //追加字符串
    sb.ToString(); //把SpringBuilder转换为字符串
    sb.Insert(); //插入字符串
    sb.Replace(); //替换字符串
    

    相关文章

      网友评论

          本文标题:17.03.11 .Net基础(二)

          本文链接:https://www.haomeiwen.com/subject/gfragttx.html