java 和 C# 的访问权限

java 和 C# 的访问权限

【Java中访问权限】有四个:

作用域_____当前类____同一package___子孙类____其他package
public(类或成员)√√√√
protected(成员)√√√×
缺省(类或成员)√√××
private(成员)√×××

【注意】:
1.一个java文件可以包含多个类,但是有且必须一个类为public且类名要与文件名一样,其他的类为缺省权限。
2.java类中可以包含内部类,内部类名称不能与外层的相同,且内部类的访问权限和成员权限相同,内部类不可以有静态成员,静态初始化块,静态方法等
3.类和接口的访问权限种类一样

-------------------------------------------------------------------------------

【C#中访问权限】:


作用域_____当前类____同一namespace___子孙类____其他namespace
public(类或成员)√√√√
internal(类或成员, 类缺省; 访问者必须为同一程序集下)√√√√
protected(成员)√√√×
protected internal(成员,访问着必须为同一程序集下)√√√×
private(成员, 成员缺省)√×××


【注意】:
1.一个c#文件只能包含一个类,但类名不需要和文件名一样,c#类中可以包含内部类.
2.C#中的内部类是和外部类的对象无关的,而Java中,内部类是和外部类的对象相关的。

C#内部类有如下特点:
1.内部类和外部类不能互相访问实例成员。
2.外部类可以访问内部类的internal和public静态成员。
3.内部类可以访问外部类的所有静态成员。

posted @ 2014-10-16 18:28  许仙来了  阅读(318)  评论(0编辑  收藏  举报