一、局部变量和成员变量
**定义
局部变量:在方法中定义声明的变量,包括方法中的参数
成员变量:在类中声明的变量
例:class Prosen{
private string name;//成员变量
public void Print(int a)//局部变量
{
int age=10;//局部变量
Console.WriteLine(age+a);
}
}
**局部变量与成员变量的区别
1.作用域不同
*局部变量的作用域仅限于定义它的方法中
*成员变量的作用域在整个类的内部或其子类中
2.初始值不同
*系统会给成员变量赋一个默认的初始值,而局部变量系统不会为其赋初始值
基本数据类型系统默认值:
int a;//0
float b;//0.0
string c;//null
double d;//0.0
char e;// \u
bool f;//false
二、static 静态
** 什么是静态?
static静态变量声明符。 在声明它的程序块,子程序块或函数内部有效,值保持,在整个程序期间分配存储器空间。在C#中静态可以修饰变量、方法
**静态变量
含有static关键字的变量就是静态变量
静态变量和实例变量两者的区别:
1、静态变量在内存中只有一个内存空间,在加载类的过程中完成静态变量的内存分 配;每创建一个新的实例对象,就会为实例变量分配不同的内存
2、静态变量可以直接通过类名来访问,实例变量需要通过各个对象访问
**静态方法
含有static关键字的方法就是静态方法
静态方法和实例方法两者的区别:
1. 静态方法只能访问静态变量;实例方法既可以访问实例变量,也可以访问静态变量
2. 静态方法在Main方法中可以直接使用;实例方法在Main方法中必须通过对象调用
三、构造方法
**什么是构造方法
在一个类中,方法名与类名相同,没有任何返回类型(包括void)且被public修饰的方法
如果一个类中没有写构造方法,系统会提供一个默认的无参的构造方法,如果有写,系统 四默认的构造方法会被覆盖
**构造方法的作用:初始化成员变量
**构造函数的特点:
1.在一个类中可以存在多个构造函数---构造函数的重载
2.函数名与类名相同且无返回值
3.有一个默认的构造函数
4.构造函数一般为公有的
四、方法的重载
**定义:在同一个类中,方法名相同参数列表(参数个数、类型、顺序)不同
五、this关键字
**this关键字指定是类的实例,作用范围:当前类
**用法:1.当成员变量与局部变量同名时,用this.成员变量,表示调用成员变量的值
2.当构造方法互相调用时,用this
例:class A{
public string name;
public int age;
public A(string name,int age){
this.name=name;this.age=age;
}
}