早教吧作业答案频道 -->其他-->
说出在类中成员可以有哪些修饰符,每种修饰符的作用是什么
题目详情
说出在类中成员可以有哪些修饰符,每种修饰符的作用是什么
▼优质解答
答案和解析
修饰符用于限定类型以及类型成员的申明,C#中的修饰符按功能可分为四部分:属性修饰符,存取修饰符,类修饰符和成员修饰符.
属性修饰符:
[Serializable]:按值将对象封送到远程服务器.在按值封送对象时,就会创建一个该对象的副本,并将其序列化传送到服务器.任何对该对象的方法调用都是在服务器上进行的.
[STAThread]:是Single-Threaded Apartment单线程套间的意思,是一种线程模型(线程模式用于处理组件在多线程的环境里并行与并互的方式),套间线程(STAThread)模式中接口跨线程传递必须被调度(Marshal),不调度直传肯定会失败!而MTA或FreeThread模式中的接口可以不经调度直接传递.这种调度在特定的环境中非常影响性能(可有几百倍之差).如VB里只支持STAThread模式.FreeThread模式的组件会在里面表现成和跨进程一样慢!线程模式是微软的COM基础中的极其重要的概念.一定要吃透!
[MTAThread]:是MultiThreaded Apartment多线程套间的意思,同上也是一种线程模型.
存取修饰符:
public:存取不受限制.
private:只有包含该成员的类可以存取.
internal:只有当前工程可以存取.
protected:只有包含该成员的类以及派生类可以存取.
类修饰符:
abstract:抽象类.指示一个类只能作为其它类的基类.
sealed:密封类.指示一个类不能被继承.理所当然,密封类不能同时又是抽象类,因为抽象总是希望被继承的.
成员修饰符:
abstract:指示该方法或属性没有实现.
sealed:密封方法.可以防止在派生类中对该方法的override(重载).不是类的每个成员方法都可以作为密封方法密封方法,必须对基类的虚方法进行重载,提供具体的实现方法.所以,在方法的声明中,sealed修饰符总是和override修饰符同时使用.
delegate:委托.用来定义一个函数指针.C#中的事件驱动是基于delegate + event的.
const:指定该成员的值只读不允许修改.
event:声明一个事件.
extern:指示方法在外部实现.
override:重写.对由基类继承成员的新实现.
readonly:指示一个域只能在声明时以及相同类的内部被赋值.
static:指示一个成员属于类型本身,而不是属于特定的对象.即在定义后可不经实例化,就可使用.
virtual:指示一个方法或存取器的实现可以在继承类中被覆盖.
new:在派生类中隐藏指定的基类成员,从而实现重写的功能.若要隐藏继承类的成员,请使用相同名称在派生类中声明该成员,并用 new 修饰符修饰它.
属性修饰符:
[Serializable]:按值将对象封送到远程服务器.在按值封送对象时,就会创建一个该对象的副本,并将其序列化传送到服务器.任何对该对象的方法调用都是在服务器上进行的.
[STAThread]:是Single-Threaded Apartment单线程套间的意思,是一种线程模型(线程模式用于处理组件在多线程的环境里并行与并互的方式),套间线程(STAThread)模式中接口跨线程传递必须被调度(Marshal),不调度直传肯定会失败!而MTA或FreeThread模式中的接口可以不经调度直接传递.这种调度在特定的环境中非常影响性能(可有几百倍之差).如VB里只支持STAThread模式.FreeThread模式的组件会在里面表现成和跨进程一样慢!线程模式是微软的COM基础中的极其重要的概念.一定要吃透!
[MTAThread]:是MultiThreaded Apartment多线程套间的意思,同上也是一种线程模型.
存取修饰符:
public:存取不受限制.
private:只有包含该成员的类可以存取.
internal:只有当前工程可以存取.
protected:只有包含该成员的类以及派生类可以存取.
类修饰符:
abstract:抽象类.指示一个类只能作为其它类的基类.
sealed:密封类.指示一个类不能被继承.理所当然,密封类不能同时又是抽象类,因为抽象总是希望被继承的.
成员修饰符:
abstract:指示该方法或属性没有实现.
sealed:密封方法.可以防止在派生类中对该方法的override(重载).不是类的每个成员方法都可以作为密封方法密封方法,必须对基类的虚方法进行重载,提供具体的实现方法.所以,在方法的声明中,sealed修饰符总是和override修饰符同时使用.
delegate:委托.用来定义一个函数指针.C#中的事件驱动是基于delegate + event的.
const:指定该成员的值只读不允许修改.
event:声明一个事件.
extern:指示方法在外部实现.
override:重写.对由基类继承成员的新实现.
readonly:指示一个域只能在声明时以及相同类的内部被赋值.
static:指示一个成员属于类型本身,而不是属于特定的对象.即在定义后可不经实例化,就可使用.
virtual:指示一个方法或存取器的实现可以在继承类中被覆盖.
new:在派生类中隐藏指定的基类成员,从而实现重写的功能.若要隐藏继承类的成员,请使用相同名称在派生类中声明该成员,并用 new 修饰符修饰它.
看了 说出在类中成员可以有哪些修饰...的网友还看了以下:
在性状分离比的模拟实验中,甲、乙容器分别代表某动物的雌、雄生殖器官,小球的颜色和字母表示雌、雄配子 2020-06-26 …
为了解学生的课余生活情况,某中学在全校范围内随机抽取部分学生进行问卷调查.问卷中请学生选择最喜欢的 2020-07-23 …
(2013•上海)在性状分离比的模拟实验中,甲、乙容器分别代表某动物的雌、雄生殖器官,小球的颜色和字 2020-11-01 …
在“模拟孟德尔的杂交实验”中,甲、丙容器代表某动物的雌性生殖器官,乙、丁容器代表某动物的雄性生殖器官 2020-11-02 …
与盐反应5个可以与盐反映的物质种类,且每种举一个化学方程式,标明反应类型,反应生成条件 2020-11-10 …
领导听课分哪几种类型?每一种类型的作用是什么? 2020-11-28 …
在模拟孟德尔的杂交实验中,甲、丙容器代表某动物的雌生殖器官,乙、丁容器代表某动物的雄生殖器官,小球上 2020-11-30 …
烟草花叶病毒、噬菌体、烟草、酵母菌、硝化细菌、人核酸的种类分别为:遗传物质种类分别为:核苷酸种类分别 2020-12-08 …
肉果有哪些种类?请每举一个例子 2020-12-28 …
下面四种类型,每种各写出五个单词.1、一般在词尾加s或ing2、以e结尾的加s或e加in.g.3、以 2021-01-12 …