黑马程序员技术交流社区
标题:
在创建一个类的开头加public与不加public是区别?
[打印本页]
作者:
苟于伟
时间:
2013-5-19 17:27
标题:
在创建一个类的开头加public与不加public是区别?
class Program
{
static void Main(string[] args)
{
Person.a = 40;
Person.Pr();
person1.Ei();
Console.ReadKey();
}
}
public class Person //这里如果不加public与加了public有何区别?
{
public static int a;
public static void Pr()
{
Console.WriteLine("静态成员"+a);
}
}
class person1
{
public static void Ei()
{
Console.WriteLine("我今年{0}岁",Person.a);
}
}
复制代码
public是允许访问的最高级别,如果在创建一个类的开头加public是表示可以访问本项目之外的项目吗?
作者:
回首、后_街
时间:
2013-5-19 17:48
这就涉及到了权限的问题啊!
不加public就是默认的权限啊!就只能在同一个包中被其它类访问,具有包可见性!
加了public在整个项目中都可以被访问啊!
还要注意的就是如果你使用一些强大的编程工具如:eclipse如果不加public,class后的类名可以不和文件名一样!
如果加了public是一定要和文件名一样的要不会编译报错!
作者:
王朋
时间:
2013-5-19 18:47
对于类来说 public 修饰符在任何地方都可以访问,不加修饰符的话默认是internal表示在当前程序集内都可以被调用到
对于类中的方法字段和属性public也表示任何地方都可以访问,不过不加修饰符的话表示protected,只有在当前类和当前子类中可以访问。
作者:
吃肉的小浣熊
时间:
2013-5-19 21:38
public 全部可见
protected 子类可见
default 包内可见
private 本类可见
不加就是默认的包可见,就是同一包内可以访问,加public就是都可用
作者:
黑马—杨磊
时间:
2013-5-21 10:27
加上public就是完全公开,没有访问的限制;但是不加public的话,就只能在同一命名空间中可以访问
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2