好问题
Good  Question
  • 首 页
  • 问题
    • PHP
    • JAVA
    • CPlusPlus
    • C#
    • SQL
  • 关 于
  • 联 系
公有的,私有的,受保护的,什么都没有修饰符的区别是什么? 关闭 返回上一级  

公有的,私有的,受保护的,什么都没有修饰符的区别是什么?
+ 查看更多

发布日期:2018-02-23 13:50
分类:C#
浏览次数:159
我大学一直使用公有修饰符,并且我想知道公有的,私有的,受保护的修饰符的区别?
还有静态修饰符做什么相反没有静态修饰符做什么?
 
回答:
 
访问修饰符
公有:该类型或成员可以在同一程序集中的其他代码或另一个引用它的程序集访问。
私有:类型或成员只能通过同一类或结构中的代码访问。
受保护的:类型或成员只能在同一类或结构中或在派生类中通过代码访问。
内部的:类型或成员可以在同一程序集中的任何代码访问,但不能从另一程序集访问。
内部保护:类型或成员可以在同一程序集中的任何代码或由另一程序集中的任何派生类访问。
 

如果没有设置访问修饰符,则使用默认访问修饰符。所以总是有某种形式的访问修饰符,即使它没有设置。
 
静态
类上的静态修饰符意味着类不能被实例化,并且它的所有成员都是静态的。不管它的封闭类型创建了多少个实例,静态成员只有一个版本。
静态类与非静态类基本相同,但有一个区别:静态类不能外部实例化。换句话说,不能使用新关键字来创建类类型的变量。因为没有实例变量,所以您可以使用类名本身来访问static类的成员。
然而,有这样一个静态构造函数。任何类都可以有一个,包括静态类。它们不能直接调用,不能有参数(除了类本身的任何类型参数)。在创建第一个实例或引用任何静态成员之前,将自动调用静态构造函数初始化类。看起来像这样:
 
        static class Foo()
{
    static Foo()
    {
        Bar = "fubar";
    }

    public static string Bar { get; set; }
}
静态类经常被用作服务,你可以像这样使用它们:
MyStaticClass.ServiceMethod(...);
上一篇对一个或多个实体的验证失败。有关详细信息,请参见“EntityValidationErrors”属性。
如何获取当前foreach循环的索引?下一篇
下一篇如何获取当前foreach循环的索引?

最新文章

  • 函数`__construct`用来干嘛的
    发布日期:2018-03-26
  • 通过访客的IP得到他们的地区
    发布日期:2018-03-26
  • 合并两个PHP对象的最好的方法是什么?
    发布日期:2018-03-26
  • 该如何把一该如何把一个对象转化成数组?
    发布日期:2018-03-26
  • 什么是输出缓冲区?
    发布日期:2018-03-26
  • 在PHP中怎么把用逗号分隔的字符串分隔在一个数组里?
    发布日期:2018-03-26
  • 在PHP中使用foreach循环时查找数组的最后一个元素
    发布日期:2018-03-26
关于好问
收集整理一些有用的问题和回答,造福中国的程序旺和IT喵们!
友情链接
起飞页 
相关信息
版权声明
Copyright © 2016 - 2022  苏州卡达网络科技有限公司 备案号:苏ICP备09008221号