打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
静态方法只能访问类中的静态成员

class A

{

int x;

static int y;

static int F()

{

x = 1;   //错误 不允许访问

y = 2   //正确 允许访问

}

作为非静态成员,在类的每个实例中都占有一个存储,或者说具有一个副本,而静态方法是类所共享的,它无法判断出当前的x属于哪个类的实例,所以不知道应该到内存的哪个地址去读取当前x的值;而y是静态成员所有类的实例都公用一个副本,静态方法F使用它就不存在什么问题。

是不是静态方法就无法识别类的实例了呢?不是,在C#中,我们可以灵活地采用传递参数的办法以一个类的实例做参数。

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
java学习——31.静态成员
C#第3讲:类、对象和类的主要成员
静态方法与实例方法的区别
C#中构造函数和析构函数的用法
C#静态方法和非静态方法
C#中静态与非静态方法比较
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服