C#编程(二十四)----------修饰符
修饰符
修饰符即应用于类型或成员的关键字.修饰符可以指定方法的可见性,如public或private,还可以指定一项的本质,如刚发的vritual或abstract.
可见性的修饰符
|
修饰符 |
应用于 |
说明 |
|
public |
所有类型或成员 |
任何代码均可以访问该项 |
|
protected |
类型和内嵌类型的所有成员 |
只有派生的类型能访问该项 |
|
internal |
所有类型或成员 |
只能包含它的程序集中访问该项 |
|
private |
类型和内嵌类型的所有成员 |
只能在它所属的类型中访问该项 |
|
protected internal |
类型和内嵌类型的所有成员 |
只能在包含他的程序集中和派生类型的任何代码中访问该项 |
注意,类的定义只能是内部的或公有的,这取决于是否希望在类型包含的程序集外部访问它:
public class MyClass
{}
不能把类型声明为protected,private,和protected internal,因为这些修饰符对于包含在名称空间中的类型没有意义.因此这些修饰符只能应用与成员.但是,可以用这些修饰符定义嵌套的类型(即,包含在其他类型中的类型).因为在这种情况下,类型也具有成员的状态.于是下面的代码是合法的:
public class OuterClass
{
protected class InnerClass
{}
}
如果有嵌套的类型,则内部的类型总是可以访问外部类型的所有成员.所以,上面的代码中,InnerClass中代码可以访问OuterClass的所有成员,甚至可以访问OuterClass的私有成员.
其他修饰符
|
修饰符 |
应用于 |
说明 |
|
new |
函数成员 |
成员相同的签名隐藏继承的成员 |
|
static |
所有成员 |
成员不作用于类的具体实例 |
|
vritual |
仅函数成员 |
成员可以由派生类重写 |
|
abstract |
金函数成员 |
虚拟成员定义了成员的签名,单没有提供实现代码 |
|
override |
仅函数成员 |
成员重写了继承的虚拟或抽象成员 |
|
sealed |
类,方法和属性 |
对于类,不能继承自密封类.对于属性和方法,成员重写已继承的虚拟成员,但任何派生类中的任何成员都不能重写该校恒源.该修饰符必须与override一起使用 |
|
extern |
仅静态方法 |
成员在外部用宁一中语言实现. |
C#编程(二十四)----------修饰符的更多相关文章
- (C/C++学习笔记) 二十四. 知识补充
二十四. 知识补充 ● 子类调用父类构造函数 ※ 为什么子类要调用父类的构造函数? 因为子类继承父类,会继承到父类中的数据,所以子类在进行对象初始化时,先调用父类的构造函数,这就是子类的实例化过程. ...
- Bootstrap<基础二十四> 缩略图
Bootstrap 缩略图.大多数站点都需要在网格中布局图像.视频.文本等.Bootstrap 通过缩略图为此提供了一种简便的方式.使用 Bootstrap 创建缩略图的步骤如下: 在图像周围添加带有 ...
- 剑指Offer(二十四):二叉树中和为某一值的路径
剑指Offer(二十四):二叉树中和为某一值的路径 搜索微信公众号:'AI-ming3526'或者'计算机视觉这件小事' 获取更多算法.机器学习干货 csdn:https://blog.csdn.ne ...
- 学习笔记:CentOS7学习之二十四:expect-正则表达式-sed-cut的使用
目录 学习笔记:CentOS7学习之二十四:expect-正则表达式-sed-cut的使用 24.1 expect实现无交互登录 24.1.1 安装和使用expect 24.2 正则表达式的使用 24 ...
- 二十四、Struts2中的UI标签
二十四.Struts2中的UI标签 Struts2中UI标签的优势: 数据回显 页面布局和排版(Freemark),struts2提供了一些常用的排版(主题:xhtml默认 simple ajax) ...
- WCF技术剖析之二十四: ServiceDebugBehavior服务行为是如何实现异常的传播的?
原文:WCF技术剖析之二十四: ServiceDebugBehavior服务行为是如何实现异常的传播的? 服务端只有抛出FaultException异常才能被正常地序列化成Fault消息,并实现向客户 ...
- VMware vSphere 服务器虚拟化之二十四 桌面虚拟化之手动池管理物理机
VMware vSphere 服务器虚拟化之二十四 桌面虚拟化之手动池管理物理机 VMwareView手动池可以管理物理计算机 说明: 环境基于实验二十三 1.准备一台Windows 7的物理计算机名 ...
- Bootstrap入门(二十四)data属性
Bootstrap入门(二十四)data属性 你可以仅仅通过 data 属性 API 就能使用所有的 Bootstrap 插件,无需写一行 JavaScript 代码.这是 Bootstrap 中的一 ...
- 3360: [Usaco2004 Jan]算二十四
3360: [Usaco2004 Jan]算二十四 Time Limit: 10 Sec Memory Limit: 128 MBSubmit: 6 Solved: 6[Submit][Statu ...
- JAVA之旅(二十四)——I/O流,字符流,FileWriter,IOException,文件续写,FileReader,小练习
JAVA之旅(二十四)--I/O流,字符流,FileWriter,IOException,文件续写,FileReader,小练习 JAVA之旅林林总总也是写了二十多篇了,我们今天终于是接触到了I/O了 ...
随机推荐
- 002_分布式搜索引擎Elasticsearch的查询与过滤
一.写入 先来一个简单的官方例子,插入的参数为-XPUT,插入一条记录. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 curl -XPUT 'http:/ ...
- com.alibaba.fastjson.JSONException: autoType is not support.
解决办法:https://github.com/alibaba/fastjson/wiki/enable_autotype 文摘如下: 一.添加autotype白名单 添加白名单有三种方式,三选一,如 ...
- Java多态概述
多态 所谓多态,实际上就是一个对象的多种状态: 下面例子中,Tiger可以看做Tiger,也可以看做Animal Cat 可以看做Cat,也可以看做Animal Dog 可以看做Dog,也可以看做A ...
- git命令之git stash 暂存临时代码
git stash — 暂存临时代码 stash命令可以很好的解决这样的问题.当你不想提交当前完成了一半的代码,但是却不得不修改一个紧急Bug,那么使用’Git stash’就可以将你当前未提交到 ...
- inline-block元素间隙问题原因及解决方法
inline-block元素间隙问题原因及解决方法 原因: 书写时由空格.换行或回车所产生空白符所致 解决方法: 方法1:font-size:0 方法2:改变书写方式 方法3:使用margin负值 方 ...
- java 多重继承
接口不仅仅只是一种更纯粹形式的抽象类,它的目标比这更高,因为接口是根本没有任何具体实现的--也就是说,没有任何与接口相关的存储,因此也就无法阻止多个接口的组合, 在导出类中,不强制要求必须有一个抽象的 ...
- .NetCore使用FluentValidation实现友好验证提示
Nuget包导入FluentValidation.AspNetCore 官方的用法是在services中添加如下来操作 services.AddMvc().AddFluentValidation(co ...
- jQuery预览图
- MySQL的lock tables和unlock tables的用法(转载)
早就听说lock tables和unlock tables这两个命令,从字面也大体知道,前者的作用是锁定表,后者的作用是解除锁定.但是具体如何用,怎么用,不太清楚.今天详细研究了下,总算搞明白了2者的 ...
- forEach的坑
使用js里的forEach来遍历数组的时候需要注意的是:break,return语句不能使其中断,它还是会继续遍历完数组的每一个元素 错误代码: function nameExit(name){ da ...