protected,internal和protected internal
来源:互联网 发布:手机照片移花接木软件 编辑:程序博客网 时间:2024/05/19 06:16
我03年开始搞C#,搞了好多年了,楞是没搞出什么名堂。其中是有原因的,水平太烂。
好比面向对象里非常基本的protected可访问级别,一直都没搞清楚。
我记忆中,好像在哪读过,基类中的protected,在子类中会变成private,所以只能被儿子访问,孙子就不行了。但事实上,protected不管在基类还是子类,永远都是protected。
另外,internal这个访问级别原本不知道有什么用,现在有点明白了。它的作用是只能在本程序集里才是可访问的。比如,你写了个公用类库,编译成一个独立的DLL被其他程序调用,这时候,internal可以保证有些东西只能在这个公用类库才能访问,那些调用程序即使继承了里面的类,也无法访问这些东西。
C#里protected还可以与internal结合:protected internal,只能在本程序集中,由本类或继承类访问。
==================================
我又发现一种现象
属性里边,访问器get和set如果成对出现,则它们其中一个(仅一个)可以设置访问修饰符,并且这个访问限制应该比属性的更为严格。例如
public string Name
{
get
{
return name;
}
protected set
{
name = value;
}
}
这个当然是有用的,通常我们都希望SET有更严格的限制。
对于 protected 这个东东,属性和方法的访问级别似乎也有区别。比如,基类中有:
class Base
{
protected int Property{get;}
protected int Method();
}
它们都是protected,子类中访问当然没有问题
class Son : Base
{
void Test()
{
int i = Property;
Method();
}
}
但如果象这样
- protected,internal和protected internal
- C# protected internal和internal的区别
- C#public/protected/private/internal/protected internal
- Protected internal 与 internal 、Protected的区别
- internal、protected的区别
- private,protected,public,internal
- private,protected,public,internal
- C# - protected internal
- C#的protected internal
- Protected Internal的理解
- C#的protected internal
- 访问修饰符 internal 和 protected
- (十二)private、protected、public 和 internal
- private,protected,public和internal的区别
- private,protected,public和internal的区别
- private、protected、public和internal的区别
- C# private ,protected ,public ,protected internal区别
- c#中的访问修饰符Protected,privet ,public, internal,和internal protected
- 如何在列表数据中使用打印按钮实现打印预览
- SQL IP to BigInt IP地址转换数字
- AutoCAD双击反应器练习
- WCF RIA 服务 (二十四)-- Silverlight 客户端 5
- SQL Server 中查询非中文,非英文,非数字的特殊列
- protected,internal和protected internal
- An Inline Function is As Fast As a Macro -- Using GCC
- SQL Server空格处理
- IT蚁族:蜗居和逃离
- ORA-12514: TNS: 监听程序当前无法识别连接描述符中请求的服务 问题解决
- 增加用户的sudo权限
- [转]httprecon:运行时错误 62 输入超出文件尾
- 当前时间与GMT时间转换
- 新浪网:《密战》引爆企业桌面安全管理系统市场