为了账号安全,请及时绑定邮箱和手机立即绑定

命名空间能理解为java的包么?

命名空间能理解为java的包么?

正在回答

2 回答

你好, c#中的“命名空间(namespace)” 和java 中的“包(package )”相似的, 

相同点:

1、都是为了重用性(reusebility)——软件工程中一个非常重要的目标。

2、C#里面的命名空间和Java中的包都属于访问权限的控制机制。

不同点:

1、C#命名空间只是一种逻辑上的结构,它允许所组织的类文件的物理存放位置与逻辑结构不一致,而Java中类文件的物理结构必须与逻辑结构一致。

2、Java的package本身没有子包的概念,所有package都是并列的关系,没有谁包含谁的问题。比如:org.dominoo.action和org.dominoo.action.asl之间绝对没有包与子包的关系。它们是各自独立的包,各自拥有自己的class/interface的集合。在org.dominoo.action.asl的某个java文件里,如果想引用org.dominoo.action里的某个class/interface,则必须import org.dominoo.action。

C++/C#的namespace方案则不然,一个namespace可以有自己的sub-namespace,我们不妨将namespace也称为package,那么C++/C#的package之间就可能存在包与子包的关系。

3、Java中使用import语句而C#中使用using namespace语句 

祝你学习顺利!


2 回复 有任何疑惑可以回复我~

应该不是,java的包可以没有数量限制,但是命名空间就是一个namespace

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
C#开发轻松入门
  • 参与学习       254045    人
  • 解答问题       1459    个

本门课程是C#语言的入门教程,将带你轻松入门.NET开发

进入课程

命名空间能理解为java的包么?

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信