说是说关键字 但不一定 就是关键字 只是吧他们放到了这里而已
static
详解
总结:
1、修饰类
- 将类修饰为静态的,意味着这个类不能实例化对象,在调用类里面的任何内容的时候直接用类名加点的形式调用其中的方法或者字段。类名.方法名
- 使类成为静态类。这样在此类中只能定义静态的方法和静态的变量
2、修饰方法
- 该方法是类所有,而不是类实例化对象所有,这个方法在调用的时候需要类名加点。
- 这样做的好处 我猜就是可以直接调用这个方法,不然应该是需要先实例化一个对象,然后才能调用这个方法
3、修饰变量
- 修饰变量,这个变量只能是成员变量,不能是局部的。不能修饰方法体中的变量,以及形式参数。
- static修饰的变量与具体与类的对象无关性。也就是和c语言一样 付一次初值后一直都存在。
4、类的非静态成员属于类的实例所有,每创建一个类的实例都在内存中为非静态成员开辟了一块区域。而类的静态成员属于类所有,为这个类的所有实例所共享,无论这个类创建了多少个副本,一个静态成员在内存中只占有一块区域。
class A
{
string name;
static int ID;
}
A a=new A();
a.ID=1;
a.name="w";
那么实例化后,两个变量都赋了值
再实例化对象a2
A a2=new A()
a2的name为空,但a2的ID则已经有了值1
var
详解
1、var 是弱化类型的定义,可代替任何类型,编译器会根据上下文来判断你到底是想用什么类型,在无法确定自己将用的是什么类型时就可以使用var,类似 OBJECT 但是效率比OBJECT高。
2、使用var定义变量时有以下四个特点:
- 必须在定义时初始化。也就是必须是var s = “abcd”形式,而不能是如下形式: var s; s = “abcd”;
- 一但初始化完成,就不能再给变量赋与初始化值类型不同的值了。
- var要求是局部变量。
- 使用var定义变量和object不同,它在效率上和使用强类型方式定义变量完全一样。
partial
详解
Partial是局部类型的意思。允许我们将一个类、结构或接口分成几个部分,分别实现在几个不同的.cs文件中。C#编译器在编译的时候仍会将各个部分的局部类型合并成一个完整的类
out
C#中 OUT 的用法
创建函数的时候,在创建的变量前面写上out。调用的时候传递进去的的变量前面需要也写上out,那么这个变量在里面任意值得改变,都会传递出去。
class Test
{
static void Main(string[] args)
{
int n;//调用方法之前,对out参数传递的变量只需声明,可以赋值也可以不赋值,赋值也会在方法中被覆盖掉
int a = 1;
//bool b = MyTryParse("123", out n, a);//不加类名也可以
bool b = Test
文章评论