有什么区别:
namespace Library{
class File{
//code inside it
}
}
Run Code Online (Sandbox Code Playgroud)
和:
namespace Library{
public class File{
//code inside it
}
}
Run Code Online (Sandbox Code Playgroud)
那么公共课和班级之间的区别是什么?
dri*_*iis 63
没有指定public类隐式internal.这意味着该类仅在同一个程序集中可见.指定时public,该类在程序集外部可见.
它还允许internal显式指定修饰符:
internal class Foo {}
Run Code Online (Sandbox Code Playgroud)
Jon*_*nna 22
前者相当于:
namespace Library{
internal class File{
//code inside it
}
}
Run Code Online (Sandbox Code Playgroud)
private对于classes和structs(方法,属性,字段,嵌套类和嵌套enums)的internal成员以及namespaces的直接成员,所有可见性默认为最不可见 - 因为它们不能是私有的.
internal 意味着同一个程序集中的其他代码可以看到它,但没有别的东西(禁止朋友程序集和使用反射).
这有两个原因:
public你可能会意外地公开一些私密或内部的东西.如果你不小心做了一些不够明显的东西,你会得到一个明显的编译错误并修复它.如果你不小心把某些东西看得太可见,你就会在代码中引入一个不会被标记为错误的缺陷,这将是一个突破性的修改,以便以后修复.通常认为使用访问修饰符明确更好的样式,在代码中更清楚,正是发生了什么.
| 归档时间: |
|
| 查看次数: |
40083 次 |
| 最近记录: |