public和internal有什么区别?

xuerueheng 2019-09-06 06:22:25
我学的时候是说public修饰的是可以在命名空间外(项目外)访问到,而internal只能在命名空间内(项目内)被访问到,但我实际试了一下,我发现我都能在命名空间(项目)访问到,搞不懂这是怎么回事,有大佬能给我讲一下吗?
代码1:这个是我用命名空间名点出来的

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
//using 五种访问修饰符和静态;
namespace 五种访问修饰符和静态
{
internal enum xb
{
男,

}
public enum xingbie
{
男,

}

internal class Program
{
static void Main(string[] args)
{
}
}
}
namespace 实验
{
class shiyan
{
//xb a0;
//xingbie a1;
五种访问修饰符和静态.xb a2;
五种访问修饰符和静态.xingbie a3;
五种访问修饰符和静态.Program a4;
}
}

代码2:这是我引入了命名空间之后调用的

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using 五种访问修饰符和静态;
namespace 五种访问修饰符和静态
{
internal enum xb
{
男,

}
public enum xingbie
{
男,

}

internal class Program
{
static void Main(string[] args)
{
}
}
}
namespace 实验
{
class shiyan
{
xb a0;
xingbie a1;
//五种访问修饰符和静态.xb a2;
//五种访问修饰符和静态.xingbie a3;
//五种访问修饰符和静态.Program a4;
}
}
...全文
1062 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
大鱼> 2019-09-08
  • 打赏
  • 举报
回复
右键,新建项目,用internal只能在这个项目使用;你再新建个项目,在这个新建的项目中引用上一个项目的某些方法和变量,这些方法与变量就是public,不过我很少使用internal,用public,private,protected就够了。
xuerueheng 2019-09-08
  • 打赏
  • 举报
回复
引用 8 楼 wangmoxhn 的回复:
一个项目就是一个程序集,这个项目可以是dll也可以是exe

那大佬这个就是项目吧

我这样就可以使用另一个项目内的类了吧
amnoone 2019-09-08
  • 打赏
  • 举报
回复
不错 不错 学习了
wangmoxhn 2019-09-08
  • 打赏
  • 举报
回复
一个项目就是一个程序集,这个项目可以是dll也可以是exe
xuerueheng 2019-09-08
  • 打赏
  • 举报
回复
引用 6 楼 wangmoxhn 的回复:
是程序集内可以访问。
举个例子,一个程序集就是一个村子。你家房子就是一个命名空间。你家桌子就是一个类。 如果你家桌子是public的,则所有人都能来看你家桌子,包括外村的。如果是internal则只能本村人能看。

那大佬我什么时候能接触到程序集呢?我发现我现在都不知道什么是程序集?
wangmoxhn 2019-09-08
  • 打赏
  • 举报
回复 1
是程序集内可以访问。 举个例子,一个程序集就是一个村子。你家房子就是一个命名空间。你家桌子就是一个类。 如果你家桌子是public的,则所有人都能来看你家桌子,包括外村的。如果是internal则只能本村人能看。
xuerueheng 2019-09-07
  • 打赏
  • 举报
回复
引用 3 楼 LvBao_117 的回复:
一个namespace对应一个项目。internal可以在同一个命名空间下使用

那我哪个实验的命名空间怎么也能调用internal修饰的成员呢?
LvBao_117 2019-09-07
  • 打赏
  • 举报
回复
一个namespace对应一个项目。internal可以在同一个命名空间下使用
threenewbee 2019-09-07
  • 打赏
  • 举报
回复
引用 4 楼 xuerueheng 的回复:
[quote=引用 3 楼 LvBao_117 的回复:] 一个namespace对应一个项目。internal可以在同一个命名空间下使用
那我哪个实验的命名空间怎么也能调用internal修饰的成员呢?[/quote] 是跨程序集,和命名空间无关。
xuerueheng 2019-09-06
  • 打赏
  • 举报
回复
引用 1 楼 caozhy 的回复:
internal只能在项目内访问,跨dll/exe不能访问

大佬什么是dll和exe啊?文件吗?还有我上面的不在同一命名空间下的两个类不算两个项目吗,只有在从新添加一个控制台程序才算两个项目吗?
那如果是这样的话,我为什么引入不了命名空间呢?引入不了命名空间我怎么使用public修饰过的成员呢?
threenewbee 2019-09-06
  • 打赏
  • 举报
回复
internal只能在项目内访问,跨dll/exe不能访问
C# publicinternal区别
publicinternal的主要区别在于他们的访问范围,public可以在任何地方访问,而internal则只能在同一程序集中访问。选择哪种访问修饰符取决于你的需求,如果你需要对访问范围进行严格控制,那么internal可能是一个好选择,否则,你可能会使用public
private、protected、publicinternal区别
private是完全私有的,只有在类自己里面可以调用,在类的外部和子类都不能调用,子类也不能继承父类的private的属性和方法。 protected虽然可以被外界看到,但外界却不能调用,只有自己及自己的子类可以调用(protected的属性和方法都可以被子类所继承和调用)。 private和protected的共同点:外部都不可以访问。 private和protected的不同点...
c#中修饰符internalpublic 区别
internal 访问权限限制在程序集之内。针对程序集的,程序集中的任何类都是可以访问internal修饰的类。只能在命名空间内(项目内)被访问到,私有的。 public访问权限不限制。可以在命名空间外(项目外)被访问到的,公有的 。
修饰符private,public,protected,internal区别
1、public的访问不受限制,对任何类和成员都完全公开,无限制访问。2、protected虽然可以被外界看到,但外界却不能调用,只有自己及自己的子类可以调用(protected的属性和方法都可以被子类所继承和调用)。3、internal同一应用程序集内部(在VS.NET中的一个项目中,这里的项目是指单独的项目,而不是整个解决方案)可以访问。4、protected internal访问仅限于从包含...
public、private、protected、internal区别
public、private、protected、internal和protected internal都是C#中的访问控制修饰符,用于修饰类或者成员的可访问性级别。 public:表示同一程序集中的任何其他代码或者引用该程序集中的其它程序集都可以访问该类型或成员 private:表示只有同一类或者同一结构体中的代码可以访问该类型或成员 protected:表示同一类或者该类派生的子类中的代码可...
C#

110,946

社区成员

642,602

社区内容

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • AIGC Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今

加载中

查看更多榜单
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧

+ 用AI写文章

玻璃钢生产厂家广东室内商场美陈市场价滁州人物玻璃钢雕塑价格玻璃钢蔬菜雕塑建造制作新款玻璃钢园林雕塑抽象玻璃钢雕塑订做淮南多彩玻璃钢雕塑生产厂家玻璃钢雕塑生产设备玻璃钢花盆联系方式酉阳玻璃钢雕塑南通商场新春美陈国庆 美陈 商场甘南玻璃钢雕塑销售咸宁玻璃钢雕塑考拉公司镇江玻璃钢雕塑景观设计云南创意玻璃钢雕塑图片清远玻璃钢厨师人物雕塑性价比高的大型玻璃钢雕塑无锡宝洁玻璃钢花盆厂杭州玻璃钢公园雕塑河南佛像玻璃钢仿铜雕塑生产邯郸景观校园玻璃钢雕塑河北树脂玻璃钢雕塑厂家工厂永康人物玻璃钢雕塑价格广东大型主题商场美陈怎么样马鞍山玻璃钢雕塑定制公园玻璃钢人物雕塑批发玻璃钢火车头雕塑照片优质玻璃钢雕塑销售电话湖南标牌玻璃钢景观雕塑公司浙江超市商场美陈报价香港通过《维护国家安全条例》两大学生合买彩票中奖一人不认账让美丽中国“从细节出发”19岁小伙救下5人后溺亡 多方发声单亲妈妈陷入热恋 14岁儿子报警汪小菲曝离婚始末遭遇山火的松茸之乡雅江山火三名扑火人员牺牲系谣言何赛飞追着代拍打萧美琴窜访捷克 外交部回应卫健委通报少年有偿捐血浆16次猝死手机成瘾是影响睡眠质量重要因素高校汽车撞人致3死16伤 司机系学生315晚会后胖东来又人满为患了小米汽车超级工厂正式揭幕中国拥有亿元资产的家庭达13.3万户周杰伦一审败诉网易男孩8年未见母亲被告知被遗忘许家印被限制高消费饲养员用铁锨驱打大熊猫被辞退男子被猫抓伤后确诊“猫抓病”特朗普无法缴纳4.54亿美元罚金倪萍分享减重40斤方法联合利华开始重组张家界的山上“长”满了韩国人?张立群任西安交通大学校长杨倩无缘巴黎奥运“重生之我在北大当嫡校长”黑马情侣提车了专访95后高颜值猪保姆考生莫言也上北大硕士复试名单了网友洛杉矶偶遇贾玲专家建议不必谈骨泥色变沉迷短剧的人就像掉进了杀猪盘奥巴马现身唐宁街 黑色着装引猜测七年后宇文玥被薅头发捞上岸事业单位女子向同事水杯投不明物质凯特王妃现身!外出购物视频曝光河南驻马店通报西平中学跳楼事件王树国卸任西安交大校长 师生送别恒大被罚41.75亿到底怎么缴男子被流浪猫绊倒 投喂者赔24万房客欠租失踪 房东直发愁西双版纳热带植物园回应蜉蝣大爆发钱人豪晒法院裁定实锤抄袭外国人感慨凌晨的中国很安全胖东来员工每周单休无小长假白宫:哈马斯三号人物被杀测试车高速逃费 小米:已补缴老人退休金被冒领16年 金额超20万

玻璃钢生产厂家 XML地图 TXT地图 虚拟主机 SEO 网站制作 网站优化