(面试)C# 修饰符(public,private,internal…………)
来源:互联网 发布:莎士比亚译本 知乎 编辑:程序博客网 时间:2024/06/14 07:29
访问修饰符:
public:存取不受限制。
private:只有包含该成员的类可以存取。
internal:只有当前工程可以存取。
protected:只有包含该成员的类以及派生类可以存取。
类修饰符:
abstract:抽象类。指示一个类只能作为其它类的基类。
sealed:密封类。指示一个类不能被继承。理所当然,密封类不能同时又是抽象类,因为抽象总是希望被继承的。
成员修饰符:
abstract:指示该方法或属性没有实现。
sealed:密封方法。可以防止在派生类中对该方法的override(重载)。不是类的每个成员方法都可以作为密封方法密封方法,必须对基类的虚方法进行重载,提供具体的实现方法。所以,在方法的声明中,sealed修饰符总是和override修饰符同时使用。
delegate:委托。用来定义一个函数指针。C#中的事件驱动是基于delegate + event的。
const:指定该成员的值只读不允许修改。
event:声明一个事件。
extern:指示方法在外部实现。
override:重写。对由基类继承成员的新实现。
readonly:指示一个域只能在声明时以及相同类的内部被赋值。
static:指示一个成员属于类型本身,而不是属于特定的对象。即在定义后可不经实例化,就可使用。
virtual:指示一个方法或存取器的实现可以在继承类中被覆盖。
new:在派生类中隐藏指定的基类成员,从而实现重写的功能。 若要隐藏继承类的成员,请使用相同名称在派生类中声明该成员,并用 new 修饰符修饰它。
至于顺序一般来说都是
访问修饰符+类修饰符 和 访问修饰符+成员修饰符
namespace 修饰符顺序
{
internal sealed class Class2:Class1
{
public override int AA()
{
return base.AA();
}
public new int AA(int x)
{
return x;
}
public new static int a = 5;
}
public class Class1
{
public static int a=0;
public virtual int AA()
{
return a;
}
public virtual int AA(int x)
{
return x;
}
}
}
public:存取不受限制。
private:只有包含该成员的类可以存取。
internal:只有当前工程可以存取。
protected:只有包含该成员的类以及派生类可以存取。
类修饰符:
abstract:抽象类。指示一个类只能作为其它类的基类。
sealed:密封类。指示一个类不能被继承。理所当然,密封类不能同时又是抽象类,因为抽象总是希望被继承的。
成员修饰符:
abstract:指示该方法或属性没有实现。
sealed:密封方法。可以防止在派生类中对该方法的override(重载)。不是类的每个成员方法都可以作为密封方法密封方法,必须对基类的虚方法进行重载,提供具体的实现方法。所以,在方法的声明中,sealed修饰符总是和override修饰符同时使用。
delegate:委托。用来定义一个函数指针。C#中的事件驱动是基于delegate + event的。
const:指定该成员的值只读不允许修改。
event:声明一个事件。
extern:指示方法在外部实现。
override:重写。对由基类继承成员的新实现。
readonly:指示一个域只能在声明时以及相同类的内部被赋值。
static:指示一个成员属于类型本身,而不是属于特定的对象。即在定义后可不经实例化,就可使用。
virtual:指示一个方法或存取器的实现可以在继承类中被覆盖。
new:在派生类中隐藏指定的基类成员,从而实现重写的功能。 若要隐藏继承类的成员,请使用相同名称在派生类中声明该成员,并用 new 修饰符修饰它。
至于顺序一般来说都是
访问修饰符+类修饰符 和 访问修饰符+成员修饰符
namespace 修饰符顺序
{
internal sealed class Class2:Class1
{
public override int AA()
{
return base.AA();
}
public new int AA(int x)
{
return x;
}
public new static int a = 5;
}
public class Class1
{
public static int a=0;
public virtual int AA()
{
return a;
}
public virtual int AA(int x)
{
return x;
}
}
}
- (面试)C# 修饰符(public,private,internal…………)
- c#访问修饰符 (public、protected、private、protected、 internal)
- ios之修饰符(public、internal、private)
- 深入浅出OOP(五): C#访问修饰符(Public/Private/Protected/Internal/Sealed/Constants)
- C#访问修饰符:public、protected、internal、private
- c#中public/protect/private/internal修饰符的区别
- c#中public,private,internal等修饰符的运用
- C#访问修饰符(Public/Private/Protected/Internal)
- C# 访问修饰符 public、private、protected、internal
- 访问修饰符public,protected,internal,private
- 访问修饰符public,protected,internal,private
- public/private/internal/protected访问修饰符
- 访问修饰符 :public: internal:protected: private:
- C#中 public、private、protected、internal 的区别 (几乎C#面试必考题)
- c#中访问修饰符public,private,protected,internal,protected internal的区别
- C# 访问修饰符 public、private、protectrd、internal、protected internal 访问权限
- C#共有五种访问修饰符:public、private、protected、internal、protected internal.
- C#中五种访问修饰符作用范围 public、private、protected、internal、protected internal
- 第九周任务二
- 高斯混合模型的Matlab实例
- java中使用xml二
- HGE tutorial 02 学习笔记及摘录
- 【树状数组+三维】杭电 hdu 3584 Cube
- (面试)C# 修饰符(public,private,internal…………)
- Session
- 开始工作后,一个人会失去什么?
- 敏捷软件开发
- zoj 3607 Lazier Salesgirl
- android软键盘弹出引起的各种不适终极解决方案
- 程序员面试宝典看书零散笔记
- 贪心算法——最小生成树
- 漫话中文自动分词和语义识别(下):句法结构和语义结构