带你走进C#修饰符
2012-05-18 17:01
295 查看
修饰符
访问修饰符
类修饰符
成员修饰符
注意事项
默认修饰符
需要注意的小细节
文尾
public:访问不受限制。
protected:访问仅限于包含类或从包含类派生的类型。只有包含该成员的类以及继承的类可以存取。
Internal:访问仅限于当前程序集。只有当前工程可以存取。
protected internal:访问仅限于当前程序集或从包含类派生的类型。
private:只有包含该成员的类可以存取。
sealed:指示一个类不能被继承。
override:对由基类继承成员的新实现。
readonly:指示一个域只能在声明时以及相同类的内部被赋值。
static:指示一个成员属于类型本身,而不是属于特定的对象。
virtual:指示一个方法或存取器的实现可以在继承类中被覆盖。
2.命名空间(namespace)隐式地具有public访问性,且不允许有访问修饰符。
3.一个成员或类型只能有一个访问修饰符,使用 protected internal 组合时除外。
4.命名空间上不允许使用访问修饰符,但是没有访问限制。
5.virtual修饰符不能与private,static,abstract,override修饰符同时使用。
6.override修饰符不能与 new,static,virtual 修饰符同时使用,并且重写方法只能用于重写基类中的虚函数。
访问修饰符
类修饰符
成员修饰符
注意事项
默认修饰符
需要注意的小细节
文尾
修饰符
访问修饰符:对各个成员之间访问的限制规则。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访问性 |
需要注意的小细节
1.根据发生声明的上下文,只允许某些声明的可访问性,如果未指定访问修饰符,则使用默认的可访问性。2.命名空间(namespace)隐式地具有public访问性,且不允许有访问修饰符。
3.一个成员或类型只能有一个访问修饰符,使用 protected internal 组合时除外。
4.命名空间上不允许使用访问修饰符,但是没有访问限制。
5.virtual修饰符不能与private,static,abstract,override修饰符同时使用。
6.override修饰符不能与 new,static,virtual 修饰符同时使用,并且重写方法只能用于重写基类中的虚函数。
文尾
今天整理草稿箱,发现了这篇草稿,犹记得刚接触时的不解,所以在此完善此篇博客。相关文章推荐
- [C#基础知识] ReadOnly关键字修饰的变量可以修改,只是不能重新分配
- 转---C#修饰符
- [No0000E7]C# 封装 与访问修饰符
- C# 协变逆变(泛型修饰符in和out)
- C# 修饰符
- C#修饰符
- 转:C#访问修饰符
- c#中访问修饰符和声明修饰符
- [C#基础知识] ReadOnly关键字修饰的变量可以修改,只是不能重新分配
- C# out 参数修饰符
- [C#基础知识] ReadOnly关键字修饰的变量可以修改,只是不能重新分配
- [C#] 走进异步编程的世界 - 剖析异步方法(上)
- C#中修饰符
- 走进C#,走进linq
- c# 修饰词public, protected, private,internal,protected的区别
- C# sealed修饰符
- C#2.0 extern修饰(转载)
- C#继承机制 继承与访问修饰符
- c# 修饰词public, protected, private,internal,protected的区别
- 学习C#修饰符:类修饰符和成员修饰符