类
封装,继承,多态;(面试)
封装:通过访问修饰符来实现;
方法:完成一定功能;方法签名+方法体;
普通方法:根据参数不同:
值类型,引用 类型,params,ref,和out关键字参数方法,
Out作参数,必须是变量,只能出,不能进,可以返回两个返回值;
ref既能进参,又能出参;只有字段才有默认值,方法中的变量没有默认值,必须先赋值再使用;
例:static void Main(string[] args)
{
int i=0;
string j = "";
dd(out i,out j);
Console.WriteLine(i + " " + j);
ee(ref i,ref j);
Console.WriteLine(i + " " + j);
}
public static void dd(out int i,out string j)//不接¨收实参传过来的值¦此时并没有赋值
{
Console.WriteLine(i + " " + j);//所¨´以°?此ä?处ä|会¨¢出?错䨪
i = 10; j = "we are friends";
Console.WriteLine(i+" "+j);//验¨¦证¡è出?out只?能¨¹带ä?出?值¦Ì,ê?不?能¨¹带ä?进?值¦Ì,ê?单向传递
}
public static void ee(ref int i, ref string j)
{
Console.WriteLine( i+" "+j);//由于可以带进值,所以还会报À错
i = 120;
j = " 我们是朋友";
Console.WriteLine(i + " " + j);//既能进又能¨出
}
Params 关键字,定义的参数数组可动态增长,且只能放在参数列表的最后面;
int[] arr = new int[3] { 1,2,3};
cc(1,2,3,4,5);
return;
public static void cc(params int[] arr)
{
for (int i = 0; i < arr.Length; i++)
{
Console.WriteLine(arr[i]);
}
}
分部关键字(partial):第一次编译就会将所有部分组合起来,可在命名空间中定义类,接口,结构和方法;优点:方便程序员编程;
注意:返回值必须是void的;该方法可以有ref参数 ,但不能有out参数;该方法为隐式private方法;不能将委托转化为分部方法;
使用:处理大型项目的时候,使一个类分布于多个源文件中,可以让多个程序员同时对该类进行处理;
分类方法:类的一个部分包含方法的签名。可以在同一部分或另一个部分中定义可选实现。如果未提供该实现,则会在编译时移除方法以及对方法的所有调用。
例如:partial class Program//必须为定义partial类
{
static void Main(string[] args)
{
aa();
}
static partial void aa();//只有方法签名
static partial void aa()//方法的实现
{
throw new NotImplementedException();
}
}
转载于:https://blog.51cto.com/3298646/617806