c#语言—类与函数

来源:互联网 发布:网络推广100种方法 编辑:程序博客网 时间:2024/06/03 21:16

前言

 之前我们谈到了面向对象的基础知识,接下来,小编带大家更深入地了解一下类及其方法的内容,其中会涉及到一些具体的小知识。


类与函数

 一、类的成员

 包含了字段,属性和方法。如图所示





二、构造方法

1.作用:

用来创建对象,并且可以在构造函数中对对象进行初始化。

2.构造函数

(1)构造函数是用来创建对象的特殊方法,方法名和类名一样,没有返回值,连void都不用。
构造函数可以有参数,new对象的时候传递函数参数即可
(2)如果不指定构造函数,则类有一个默认的无参构造函数。如果指定了构造函数,则不再有默认的无参构造函数,如果需要无参构造函数,则需要自己来写。
(3)构造函数可以重载,也就是有多个参数不同的构造函数。


函数中的参数out与ref

一、ref的认识

1.ref 关键字使参数按引用传递

(1)当控制权传递回调用方法时,在方法中对参数所做的任何更改都将反映在该变量中。

(2)要使用 ref 参数,方法定义和调用方法都必须显式使用 ref 关键字。

(3)例如:

class RefExample{    static void Method(ref int i)    {        i = 44;    }    static void Main()    {        int val = 0;//传递到 ref 参数的参数必须最先初始化        Method(ref val);        // val is now 44 }


二、out的理解 

1.out 关键字会导致参数通过引用来传递。

(1)不同之处在于 ref 要求变量必须在传递之前进行初始化。

(2)若要使用 out 参数,方法定义和调用方法都必须显示使用 out 关键字。

2.举例说明

class OutExample{    static void Method(out int i)    {        i = 44;    }    static void Main()    {        int value;//不必进行初始化变量        Method(out value);      //调用方法以便在方法返回之前赋值。      // value is now 44 }   }


三、两者的联系和区别 

1.在运行时的处理方式不同,如上所示。

2.在编译时的处理方式是相同的。

(1)如果一个方法采用 ref 参数,而另一个方法采用 out 参数,则无法重载这两个方法。例如,从编译的角度来看,以下代码中的两个方法是完全相同的,因此将不会编译以下代码:

class CS0663_Example //报错的一种情况{    // compiler error CS0663: "cannot define overloaded     // methods that differ only on ref and out"    public void SampleMethod(ref int i) {  }    public void SampleMethod(out int i) {  }}

(2)如果一个方法采用 ref 或 out 参数,而另一个方法不采用这两个参数,则可以进行重载,如下例所示:

class RefOutOverloadExample{    public void SampleMethod(int i) { }    public void SampleMethod(ref int i) { }}


字符串函数

一、常用函数


1.字符串替换:

string Replace(string oldValue, string newValue)将字符串中的出现oldValue的地方替换为newValue。

例子:名字替换。

2.取子字符串:

string Substring(int startIndex),取从位置startIndex开始一直到最后的子字符串;
string Substring(int startIndex, int length),取从位置startIndex开始长度为length的子字符串,如果子字符串的长度不足length则报错。


二、返回值为布尔类型

1.bool Contains(string value)判断字符串中是否含有子串value
2.bool StartsWith(string value)判断字符串是否以子串value开始;
3.bool EndsWith (string value)判断字符串是否以子串value结束;
4.int IndexOf(string value):取子串value第一次出现的位置。
5.Int IndexOf(string value,int startIndex)


小结

  关于类似的函数知识,还有很多,需要不断地去了解和实践。


0 0
原创粉丝点击