首页 > 其他 > 详细

C#名称空间 VS Java包

时间:2014-02-17 11:29:30      阅读:362      评论:0      收藏:0      [点我收藏+]

   写了几天的C#程序,程序总会先声明一个名称空间:

  

   namespace test

   跟C++里名称空间一样,只是声明方法不同:

 

 using namespace std;

   名字空间是用来按照逻辑,对类进行划分,增强了程序的可读性,而且减少了命名的冲突。看到这个作用,我忽然想到了Java中的包,这两种东西感觉作用一致,都是为了避免名称冲突才进行一种区域性的划分的。

   例如,java程序开头,总会先引入一些包:

 

 import java.util.*;

   这句话放在最前面,引入了util包中的所有类,然后,下面的程序就会调用包中内容。那么,C#中的名称空间跟Java中的包是不是相似的东西呢?


      相似也有区别:

     1, java里只有类,所以只需要把类定义在各自的包里就可以避免重复了.c++的命名空间里,不但可以包括类,还可以包括函数,变量,模板等.

      2,C#里面的名称空间和java中的包都属于访问权限的控制机制,就是说,只有具备相应的权限才允许代码访问它们内部的类。但是java中的包需要对应一个物理文件夹,文件夹名必须和包的名称一致,C#中的名称空间则不受这种限制。

   

   这两种东西,都是起到了一个分类打包,便于调用的作用。

  


C#名称空间 VS Java包

原文:http://blog.csdn.net/lhc1105/article/details/19296103

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!