刚刚开始接触C#,总结的是自己整理的关于类,静态成员和静态方法的知识;作为自己学习的笔记。
类
1. 定义
定义一个模板,通过模板生成对象
模板中包含对象的状态和行为
2. 语法
[访问修饰符] class <类名>
{
//类的主体
}
3. 修饰符
具体的解释:访问控制权限
类名及所属工程 A 中变量 的访问修 饰符 |
Project X Class A
|
Project X Class B derived from A |
Project Y Class C derived from A |
Project X Class D
|
Project Y Class E
|
Private |
Private int i |
不可以访问 |
不可以 |
不可以 |
不可以 |
Internal |
Internal int j |
可以访问 |
不可以 |
可以 |
不可以 |
Public |
Public int k |
可以访问 |
可以 |
可以 |
可以 |
Protected |
Protected int l |
可以访问 |
可以 |
不可以 |
不可以 |
Protected internal |
Protected internal int m |
可以访问 |
可以 |
可以 |
不可以 |
1. 实例化
1. 实例化就是通过类这个模板来创建一个对象的过程
使用new关键字来创建
两种方法创建:
创建BankCustomer类的一个对象c

2. 创建成功之后就可以访问模板中定义的属性和方法
使用分号来访问变量,方法

其中FirstName LastName Balance Deposit为BankCustomer类的属性和方法
x可以直接访问
y必须实例化一个对象才可以访问y
3. 静态成员
静态成员与非静态成员比较:
4. 静态方法
静态方法与非静态方法比较:
|
静态方法 |
非静态方法 |
形式 |
使用static修饰符 |
没有使用static |
从属 |
类所有 |
类的实例所有 |
存储方式 |
在内存中只占同一块区域无论创建多少实例 |
每创建一个实例,都会在内存中为非静态方法新分配一块内存 |
使用权限 |
为各个类的实例公用 类实例化前即可使用 |
类实例化后才可使用 |
访问限制 |
只能访问类中静态成员 |
可以访问类中任何成员 |
访问方式 |
通过类直接访问 不能使用this等关键字 |
通过对象访问 |
创建时间 |
类装载时被创建 |
类被实例化时被创建 |
静态方法调用时无法判断非静态变量使用的内存地址,所以无法使用;而静态变量的地址对类来说是固定的,故可以使用。
静态方法效率比实例化高,静态方法的缺点是不能自动进行销毁,而实例化的则可以做销毁