zoukankan      html  css  js  c++  java
  • .net第一章总结

    ---恢复内容开始---

    一丶
    1.CLR公共语言运行库。FCL基础类库
    2.NET是一个与硬件无关的程序执行平台,通过二次编译实现本机的运行,执行过程如下。

    3.类型的推断 var关键字可以自动识别变量
    例如 var n=0; int n=0;等价
    4。break语句能够跳出循环语句。continue跳出当前循环,而不是完全跳出循环。


    二丶字符串的常见操作
    1.  .Length能够获取字符串的长度。

    2.字符串可以直接用+相加,也可以用StringBuilder类实成员实现相加。
    sb.Append();//sb为对象

    3.截取字符串的一部分 变量.Substring(起始位置,截取位置)
    string s1=str.Substring(0,2)

    4.Split用法
    1.用单个字符分割
    string str="aaa,bbb,ccc";
    string []sarray=str.split(',');//得到,分割的各个字符串
    foreach(string i in sarray)
    {
      Response.Write(i.Tostring()+"<br>"); 
    }
    输出
    aaa
    bbb
    ccc

    2.用多个字符分隔
    string str="aaajbbbscccjdddseee";
    string []sarray=str.Split(new char[2]{'j','s'});//得到以'j'.'s'分隔的各个字符串
    foreach()
    {
      ......
    }
    输出结果:
    aaa
    bbb
    ...

    3.用字符串分割
    using System.Text.RegularExpreesions;//引用

    string str="aaajsbbbjsccc";
    string[] sarray=Regex.Split(str,"js",RegexOptions.IgnoreCase);//得到一‘JS’分隔

    三丶把123456789转换为12-345-6789
    string a="123456789"
    a=a.Insert(5,"-").Insert(2,"-");

    四丶得到随机数的的方法
    Random r=new Random();
    int n1=r.next();//返回随机非负整数

    五丶转换类型
    Convert.To....,int.parse(),INT32.Parse()等;
    INT32.Parse()性能更加优越

    六丶常用的数学函数
    Math.Ceilling();//返回大于或等于指定数字的最小整数

    Math.Ceilling(0.00);//0
    Math.Ceilling(0.40);//1
    Math.Ceilling(0.60);//1
    Math.Floor();返回小于或等于指定数字的最小整数


    面向对象的重点  继承 委托 事件 反射

    一丶继承

    继承规则
    1.派生类会继承有关基类所有成员。如果基类B是继承A,那么C继承B时也会继承A的成员。但构造、
    函数和析构函数不能被继承。
    2.派生类只能从一个类中继承,通过接口实现多重继承

    访问基类成员
    1.派生类访问时先调用基类构造函数,在调用派生类的构造函数;在执行其他调用过程
    2.在派生类的方法中调用基类方法base.<基类方法名>;base.SayHello();
    3.((ParentClass)child).SayHello();//显式类型转换

    4.new可以隐藏基类的方法;

    抽象和密封
    密封类修饰符sealed,密封后不会被其他类继承

    抽象类是专门用于继承而写的类,修饰符abstract
    1.抽象类不能实例化,抽象方法没有具体的执行代码,在非抽象的派生类中重写代码。派生类方法  
    重新加上修饰符override(同名抽象类的方法)
    2.如果不想把方法写成抽象类,但方法在基类不具体实现,而在派生类重写。
    把方法用修饰符virtual声明为虚函数,在继承类中通过override重写代码;

    多重继承,C#不允许继承多个类,但允许继承多个接口;

    接口是什么?接口修饰符interface;接口是只定义方法,没有具体的内容。在引用接口的类中定义方法

    3.如果继承多个接口,接口中有同名的方法。则实现接口时

    在调用接口的方法时候需要强制转换转换为相应的接口类型,

    如果不强制转换则无法调用接口方法。

    实现多个接口不同名称方法时前面加上public修饰符

    二丶委托

    1.委托的定义方法:和声明方法类似,区别是有修饰符delegate.

    2.什么是委托:委托就是将传递参数的部分改为传递方法,能够方便的调用需要的方法。一种可以被方法赋值的类型。可以理解为函数地址的指针.

    传递什么方法,调用什么方法。

    要求委托和方法的参数类型,数量一致,返回值类型一致

    3.不使用委托的缺点:只能传递参数,通过判断参数类型来找到需要方法。

    不好判断,扩展性差。

     4.委托和传递给委托的方法参数类型和个数需要一致

    5.多播委托

    一个委托的对象可以绑定多个方法。当调用这个委托的对象的时候依次调用绑定的方法。

    通过 “+” 来实现多个方法的绑定

    三丶事件

    事件的理解:事件与委托相似,当委托时被封装在类中,成为了事件

    规范:

    例子:Object 可以代表触发事件的对象,BoiledEventArgs代表关键参数,例如警报器需要的温度参数.

    以热水器加热水温为例,当温度到达一定程度时,警报器发出警报

    分析:

    1.两个类,分别时热水器和警报器。

    2.热水器有温度,型号等变量,存在一个加热的方法,以及一个继承了EventArgs类的温度参数类,BoiledEventArgs;

    3.警报器存在一个方法,绑定事件后,当事件触发则调用此方法

    热水器的类 

    基本数据

    委托和事件

    关键的温度参数

    存在烧水的方法,当水温大于一定温度时,将变量传递给温度类,使温度参数获取具体的值,判断事件是否绑定了警报方法,如果绑定了则传递热水器对象和温度参数,并执行绑定的方法。

    创建警报器类,存在警报方法,如果绑定了事件,促发事件时则调用次方法。将sender转换为heater类可以访问热水器的基本信息.

    主函数创建热水器类和警报器类,警报方法绑定事件,促发事件BoiledWater.调用警报方法。

    四丶using

    2.using别名,当不同的命名空间有相同的类时,区分两者的方法.

    不同命名空间有同名的类

    别名区分aclass= 第一个空间Myclass

    使用方法。

    ---恢复内容结束---

    一丶
    1.CLR公共语言运行库。FCL基础类库
    2.NET是一个与硬件无关的程序执行平台,通过二次编译实现本机的运行,执行过程如下。

    3.类型的推断 var关键字可以自动识别变量
    例如 var n=0; int n=0;等价
    4。break语句能够跳出循环语句。continue跳出当前循环,而不是完全跳出循环。


    二丶字符串的常见操作
    1.  .Length能够获取字符串的长度。

    2.字符串可以直接用+相加,也可以用StringBuilder类实成员实现相加。
    sb.Append();//sb为对象

    3.截取字符串的一部分 变量.Substring(起始位置,截取位置)
    string s1=str.Substring(0,2)

    4.Split用法
    1.用单个字符分割
    string str="aaa,bbb,ccc";
    string []sarray=str.split(',');//得到,分割的各个字符串
    foreach(string i in sarray)
    {
      Response.Write(i.Tostring()+"<br>"); 
    }
    输出
    aaa
    bbb
    ccc

    2.用多个字符分隔
    string str="aaajbbbscccjdddseee";
    string []sarray=str.Split(new char[2]{'j','s'});//得到以'j'.'s'分隔的各个字符串
    foreach()
    {
      ......
    }
    输出结果:
    aaa
    bbb
    ...

    3.用字符串分割
    using System.Text.RegularExpreesions;//引用

    string str="aaajsbbbjsccc";
    string[] sarray=Regex.Split(str,"js",RegexOptions.IgnoreCase);//得到一‘JS’分隔

    三丶把123456789转换为12-345-6789
    string a="123456789"
    a=a.Insert(5,"-").Insert(2,"-");

    四丶得到随机数的的方法
    Random r=new Random();
    int n1=r.next();//返回随机非负整数

    五丶转换类型
    Convert.To....,int.parse(),INT32.Parse()等;
    INT32.Parse()性能更加优越

    六丶常用的数学函数
    Math.Ceilling();//返回大于或等于指定数字的最小整数

    Math.Ceilling(0.00);//0
    Math.Ceilling(0.40);//1
    Math.Ceilling(0.60);//1
    Math.Floor();返回小于或等于指定数字的最小整数


    面向对象的重点  继承 委托 事件 反射

    一丶继承

    继承规则
    1.派生类会继承有关基类所有成员。如果基类B是继承A,那么C继承B时也会继承A的成员。但构造、
    函数和析构函数不能被继承。
    2.派生类只能从一个类中继承,通过接口实现多重继承

    访问基类成员
    1.派生类访问时先调用基类构造函数,在调用派生类的构造函数;在执行其他调用过程
    2.在派生类的方法中调用基类方法base.<基类方法名>;base.SayHello();
    3.((ParentClass)child).SayHello();//显式类型转换

    4.new可以隐藏基类的方法;

    抽象和密封
    密封类修饰符sealed,密封后不会被其他类继承

    抽象类是专门用于继承而写的类,修饰符abstract
    1.抽象类不能实例化,抽象方法没有具体的执行代码,在非抽象的派生类中重写代码。派生类方法  
    重新加上修饰符override(同名抽象类的方法)
    2.如果不想把方法写成抽象类,但方法在基类不具体实现,而在派生类重写。
    把方法用修饰符virtual声明为虚函数,在继承类中通过override重写代码;

    多重继承,C#不允许继承多个类,但允许继承多个接口;

    接口是什么?接口修饰符interface;接口是只定义方法,没有具体的内容。在引用接口的类中定义方法

    3.如果继承多个接口,接口中有同名的方法。则实现接口时

    在调用接口的方法时候需要强制转换转换为相应的接口类型,

    如果不强制转换则无法调用接口方法。

    实现多个接口不同名称方法时前面加上public修饰符

    二丶委托

    1.委托的定义方法:和声明方法类似,区别是有修饰符delegate.

    2.什么是委托:委托就是将传递参数的部分改为传递方法,能够方便的调用需要的方法。一种可以被方法赋值的类型。可以理解为函数地址的指针.

    传递什么方法,调用什么方法。

    要求委托和方法的参数类型,数量一致,返回值类型一致

    3.不使用委托的缺点:只能传递参数,通过判断参数类型来找到需要方法。

    不好判断,扩展性差。

     4.委托和传递给委托的方法参数类型和个数需要一致

    5.多播委托

    一个委托的对象可以绑定多个方法。当调用这个委托的对象的时候依次调用绑定的方法。

    通过 “+” 来实现多个方法的绑定

    三丶事件

    事件的理解:事件与委托相似,当委托时被封装在类中,成为了事件

    规范:

    例子:Object 可以代表触发事件的对象,BoiledEventArgs代表关键参数,例如警报器需要的温度参数.

    以热水器加热水温为例,当温度到达一定程度时,警报器发出警报

    分析:

    1.两个类,分别时热水器和警报器。

    2.热水器有温度,型号等变量,存在一个加热的方法,以及一个继承了EventArgs类的温度参数类,BoiledEventArgs;

    3.警报器存在一个方法,绑定事件后,当事件触发则调用此方法

    热水器的类 

    基本数据

    委托和事件

    关键的温度参数

    存在烧水的方法,当水温大于一定温度时,将变量传递给温度类,使温度参数获取具体的值,判断事件是否绑定了警报方法,如果绑定了则传递热水器对象和温度参数,并执行绑定的方法。

    创建警报器类,存在警报方法,如果绑定了事件,促发事件时则调用次方法。将sender转换为heater类可以访问热水器的基本信息.

    主函数创建热水器类和警报器类,警报方法绑定事件,促发事件BoiledWater.调用警报方法。

    四丶using

    2.using别名,当不同的命名空间有相同的类时,区分两者的方法.

    不同命名空间有同名的类

    别名区分aclass= 第一个空间Myclass

    使用方法。

    五丶@符号用法

    1.

    避免转义字符与需要的字符串冲突。

    2。用于跨行字符

    3.可以把关键字符便是当作普通的变量使用

    (不经常用)

     六丶预处理指令

    1.#define,#undef,要求写在第一行。

     

    如果有DEBUG则会执行#IF内的语句,否则不执行

    try-catch-finally捕获异常

    例子

  • 相关阅读:
    细嚼慢咽C++primer(3)——引用形参,内联函数,重载函数,指向函数的指针
    面试突击(1)——数据结构基础,排序
    【Linux操作系统分析】进程的创建与可执行程序的加载
    List排序
    Dictionary 排序
    数据库连接串MSSQL、Oracle、Access
    String.IsNullOrEmpty()和String.IsNullOrWhiteSpace()
    jquery学习一 选择器
    sql查询问题
    int、string转enum;enum转int、string【C#】
  • 原文地址:https://www.cnblogs.com/KY2017/p/7506189.html
Copyright © 2011-2022 走看看