`
webcode
  • 浏览: 5956225 次
  • 性别: Icon_minigender_1
  • 来自: 上海
文章分类
社区版块
存档分类
最新评论

带你走进C#修饰符

 
阅读更多

  • 修饰符
    • 访问修饰符
    • 类修饰符
    • 成员修饰符
  • 注意事项
    • 默认修饰符
    • 需要注意的小细节
  • 文尾

修饰符

访问修饰符:对各个成员之间访问的限制规则。

public:访问不受限制。

protected:访问仅限于包含类或从包含类派生的类型。只有包含该成员的类以及继承的类可以存取。

Internal:访问仅限于当前程序集。只有当前工程可以存取。

protected internal:访问仅限于当前程序集或从包含类派生的类型。

private:只有包含该成员的类可以存取。

类修饰符:对类的访问限制规则。

abstract:可以被指示一个类只能作为其它类的基类。

sealed:指示一个类不能被继承。

成员修饰符:修饰成员类型。

abstract:指示该方法或属性没有实现。

override:对由基类继承成员的新实现。

readonly:指示一个域只能在声明时以及相同类的内部被赋值。

static:指示一个成员属于类型本身,而不是属于特定的对象。

virtual:指示一个方法或存取器的实现可以在继承类中被覆盖。


注意事项

默认修饰符:

成员 默认可访问性
枚举enum 隐式为public,但声明不允许使用访问修饰符
类class internal
接口interface 默认访问基本为internal;但是如果在其他public类中使用时,必须为public
结构体 private
方法变量 默认为private,但是声明于命名空间下并且在类外,则具有public和internal访问性

需要注意的小细节:
根据发生声明的上下文,只允许某些声明的可访问性,如果未指定访问修饰符,则使用默认的可访问性。

命名空间(namespace)隐式地具有public访问性,且不允许有访问修饰符。

一个成员或类型只能有一个访问修饰符,使用 protected internal 组合时除外。

命名空间上不允许使用访问修饰符,但是没有访问限制。

virtual修饰符不能与private,static,abstract,override修饰符同时使用。

override修饰符不能与 new,static,virtual 修饰符同时使用,并且重写方法只能用于重写基类中的虚函数。

文尾

今天整理草稿箱,发现了这篇草稿,犹记得刚接触时的不解,所以在此完善此篇博客。

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics