C#中五种访问修饰符作用范围实例详解
导读:收集整理的这篇文章主要介绍了C#中五种访问修饰符作用范围实例详解,觉得挺不错的,现在分享给大家,也给大家做个参考。在C#语言中,共有五种访问修饰符:public、PRivate、protected、internal、protected in...
收集整理的这篇文章主要介绍了C#中五种访问修饰符作用范围实例详解,觉得挺不错的,现在分享给大家,也给大家做个参考。在C#语言中,共有五种访问修饰符:public、PRivate、protected、internal、protected internal。作用范围如下表:访问修饰符 说明
public 公有访问。不受任何限制。
private 私有访问。只限于本类成员访问,子类,实例都不能访问。
protected 保护访问。只限于本类和子类访问,实例不能访问。
internal 内部访问。只限于本项目内访问,其他不能访问。
protected internal 内部保护访问。只限于本项目或是子类访问,其他不能访问
C#成员类型的可修饰及默认修饰符如下表:
成员类型 默认修饰符 可被修饰符
enum public none
class private public、protected、internal、private、
protected internal
interface public none
struct private public、internal、private
下面我就结合实例,讲一下public、private、protected、internal和protected internal的作用范围。
如下代码:
[csharp] view plain copy using System;
using System.Collections.Generic;
using System.Text;
namespace AccessModifier {
public class AccessModifierClass {
public string GetPublicString() {
return "Public String";
}
protected string GetProtectedString() {
return "Protected String";
}
private string GetPrivatestring() {
return "Private String";
}
internal string GetInternalString() {
return "Internal String";
}
protected internal string GetProtectedInternalString() {
return "Protected Internal String";
}
void AvailableAccessModifier() {
this.GetPublicString();
this.GetPrivateString();
this.GetInternalString();
this.GetProtectedInternalString();
this.GetProtectedString();
}
}
public class TestAccessModifierClass1 {
void AvailableAccessModifier() {
AccessModifierClass ITem = new AccessModifierClass();
item.GetPublicString();
item.GetInternalString();
item.GetProtectedInternalString();
}
}
public class TestAccessModifierClass2 : AccessModifierClass {
void AvailableAccessModifier() {
AccessModifierClass item = new AccessModifierClass();
item.GetPublicString();
item.GetInternalString();
item.GetProtectedInternalString();
base.GetProtectedString();
}
}
}
AccessModifierClass 是我们的访问修饰符类,里面有五种访问修饰符方法,可见在 AccessModifierClass 类里面的 AvailableAccessModifier() 方法可以访问所有的方法。
在 TestAccessModifierClass1 类中的 AvailableAccessModifier() 方法只能访问 public、Internal 和 Protected Internal 方法。
TestAccessModifierClass2 类继承自 AccessModifierClass 类,所以它的 AvailableAccessModifier() 方法可以访问 public,internal,protected和protected internal 方法。
以上就是C#中五种访问修饰符作用范围实例详解的详细内容,更多请关注其它相关文章!
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: C#中五种访问修饰符作用范围实例详解
本文地址: https://pptw.com/jishu/592350.html
