C# 静态成员和实例变量

本文介绍了C#中的静态成员和实例变量。静态成员属于类,由所有实例共享,通过类名访问,而实例成员属于对象,每个实例有自己的副本,通过对象名访问。静态方法不能直接操作实例成员。示例代码展示了静态字段如何在不同实例间共享,而实例字段保持独立。
摘要由CSDN通过智能技术生成

C# 静态成员和实例变量

在类的成员的类型或者返回值类型前面加上关键字 static,就能将该成员定义为静态成员(static member)。常量或类型声明会隐式地声明为静态成员,其他没有用 static 修饰的成员都是实例成员(instance member)或者称为非静态成员。静态成员属于类,被这个类的所有实例所共享;实例成员属于对象(类的实例),每一个对象都有实例成员的不同副本。

静态成员具有下列特征:

— 静态成员必须通过类名使用 . 运算符来引用,而不能用对象来引用。
— 一个静态字段只标识一个存储位置。无论创建了一个类的多少个实例,它的静态字段在内存中都只占同一块区域。
— 静态函数成员(方法、属性、事件、运算符或构造函数)不能作用于具体的实例,在这类函数成员中不能直接使用实例成员,必须通过类名来引用。

实例成员具有以下特点:

— 实例成员必须通过对象名使用 . 运算符来引用,而不能用类名来引用。
— 类的实例字段属于类的实例所有,每创建一个类的实例,都在内存中为实例字段开辟了一块区域。类的每个实例分别包含一组该类的所有实例字段的副本。
— 实例函数成员(方法、属性、索引器、实例构造函数或析构函数)作用于类的给定实例,在它们的代码体内可以直接引用类的静态和实例成员。

理解下面的代码,体会静态成员和实例成员的使用方法:

class Test
{
    int x;    // 实例字段
    static int y;  // 静态字段
   
  • 3
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值