黑马程序员技术交流社区

标题: namespace 命名空间访问问题 [打印本页]

作者: 余攀    时间: 2013-3-1 13:06
标题: namespace 命名空间访问问题
本帖最后由 余攀 于 2013-3-1 14:58 编辑

我在一个解决方案下创建了两个项目,分别为ns和Testsss. 在项目ns里面添加了类Just.cs ,Just.cs 里面定义了一个方法Nihao(),然后使用Testsss项目去访问ns下的类Just.cs ,无法访问,请问这是哪里出问题了呢
作者: 许正龙    时间: 2013-3-1 13:17
在解决方案管理器上添加Testsss项目之后 再在你的Testsss项目中添加项目引用 指向刚才添加的ns项目即可
作者: 余攀    时间: 2013-3-1 14:57
许正龙 发表于 2013-3-1 13:17
在解决方案管理器上添加Testsss项目之后 再在你的Testsss项目中添加项目引用 指向刚才添加的ns项目即可 ...

你说的我都已经做了,问题主要出在被访问的类必须加访问修饰符public,而且这个类里面的方法必须加上static,才能实现被访问。Thank you all the same!
作者: 汪振    时间: 2013-3-1 15:00
public 有没有
作者: 汪振    时间: 2013-3-1 15:01
余攀 发表于 2013-3-1 14:57
你说的我都已经做了,问题主要出在被访问的类必须加访问修饰符public,而且这个类里面的方法必须加上stat ...

没看回复,刚才的不算
作者: xiaoxiang_04    时间: 2013-3-1 15:06
public static 这样不行吗
访问的时候用 命名空间.类名.方法
作者: 彭思    时间: 2013-3-1 15:22
类的默认访问修饰符是internal只能在 本项目中访问,ns项目中的类只能由ns中的调用,Testsss项目无法调用,而方法Nihao()是非静态方法,静态方法不能调用非静态方法,你说要在Nihao()前加static才能调用,说明你的主调方法是static,所以不加static时主调方法不能调用非静态方法Nihao()方法。   有static修饰的方法只能调用访问static修饰的成员,不能调用非静态成员,非静态方法既可以调用非静态方法也可以调用静态方法。
作者: 余攀    时间: 2013-3-1 16:22
彭思 发表于 2013-3-1 15:22
类的默认访问修饰符是internal只能在 本项目中访问,ns项目中的类只能由ns中的调用,Testsss项目无法调用, ...

分析的很对,我也发现了我的这个疏忽

作者: 余攀    时间: 2013-3-1 16:23
xiaoxiang_04 发表于 2013-3-1 15:06
public static 这样不行吗
访问的时候用 命名空间.类名.方法

可以的,之前漏掉public 修饰符
作者: 余攀    时间: 2013-3-1 16:23
汪振 发表于 2013-3-1 15:00
public 有没有

呵呵,给漏了
作者: 余攀    时间: 2013-3-1 16:24
汪振 发表于 2013-3-1 15:01
没看回复,刚才的不算

呵呵,没关系,交流交流




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2