zsping998 2021-11-25 07:01 采纳率: 100%
浏览 48
已结题

C# 类的私有成员在类的外部竟然能访问

问题遇到的现象和发生背景

最近写一个C#程序时发现一个问题,类的私有成员在类外竟然可以访问,这是什么情况?

问题相关代码,请勿粘贴截图

public class MyClass
{
private int num;
private void fun(){}

    public int test()
    {
        MyClass newClass = new MyClass();
        newClass.num = 5;
        newClass.fun();
        return newClass.num;
    }       
}
运行结果及报错内容

newClass.num = 5; newClass.fun(); 都能正常运行。很是疑惑,不明白这是怎么回事。

我的解答思路和尝试过的方法
我想要达到的结果
  • 写回答

2条回答 默认 最新

  • CSDN专家-link 2021-11-25 07:05
    关注

    这是在类内部的函数中。在类外就不可以这么做了

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录
    CSDN专家-link 2021-11-25 07:40

    再说一遍,类的内部定义本来的变量是可以访问该变量的私有成员变量的

    回复
    zsping998 回复 CSDN专家-link 2021-11-25 07:53

    谢谢你,事实确实是这样。但遇到这个实际问题前这种情况的确不会这么认为。

    回复
    CSDN专家-link 回复 zsping998 2021-11-25 07:54

    可能你之前没有在类内部定义过自己类的变量

    回复
    展开全部4条评论
查看更多回答(1条)
编辑
预览

报告相同问题?

问题事件

  • 系统已结题 12月2日
  • 已采纳回答 11月25日
  • 创建了问题 11月25日
手机看
程序员都在用的中文IT技术交流社区

程序员都在用的中文IT技术交流社区

专业的中文 IT 技术社区,与千万技术人共成长

专业的中文 IT 技术社区,与千万技术人共成长

关注【CSDN】视频号,行业资讯、技术分享精彩不断,直播好礼送不停!

关注【CSDN】视频号,行业资讯、技术分享精彩不断,直播好礼送不停!

客服 返回
顶部