`
china34420
  • 浏览: 137490 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

命名空间的理解

阅读更多

一直以来对命名空间都比较迷茫,看书也是一知半解,今天又看了一遍帮助文档。慢慢有一点点理解了。
帮助文档:通过命名空间可以控制所创建的属性和方法的可见性。请将 public、private、protected 和 internal 访问控制说明符视为内置的命名空间。如果这些预定义的访问控制说明符无法满足您的要求,您可以创建自己的命名空间。
我的理解:以上四种访问控制不能实现的情况,可以自定义访问控制说明符,这就是命名空间。反过来说,命名空间就是一种自定义的访问控制说明符。
以下实例来自帮助文档:(自己修改了一点点)
1. 定义命名空间
package example
{
	//公共的命名空间
	public namespace myInternal= "http://www.adobe.com/2006/actionscript/examples";
	
}

2. 将方法和属性存入命名空间。使用时只需要打开命名空间却可
package example.alpha
{
	import example.myInternal;
	/**
	 * ...
	 * @author zkl
	 */
	public class Utility
	{
		private static var _taskCounter:int = 0;
		private static var _s:String="未定义";
		public static function someTask():void {
			_taskCounter++;
		}
		//将静态属性存入命名空间
		myInternal static function get taskCounter():int{
			return _taskCounter;
		}
		myInternal static function get wk():String {
			return _s;
		}
		myInternal static function set wk(s:String):void {
			_s = s;
		}
		//将静态方法存入命名空间
		myInternal static function vars():void {
			trace(_s);
		}
		//将实例方法存入命名空间
		myInternal function f():void {
			trace("实例方法");
		}
	}
	
}
3. 使用命名空间
package 
{
	import flash.display.MovieClip;
	import example.myInternal;
	import example.alpha.Utility;
	/**
	 * ...
	 * @author zkl
	 */
	public class NamespaceUseCase extends MovieClip 
	{
		private var u:Utility = new Utility;
		public function NamespaceUseCase() {
			//打开命名空间
			use namespace myInternal;
			//使用命名空间
			Utility.someTask();
			Utility.someTask();
			trace(Utility.taskCounter);
			//Utility.wk="我靠";
			Utility.vars();
			u.f();
			
		}
	}
	
}
上面的使用其他访问控制说明符也应该可以实现,这里只是展示怎么使用命名空间。
分享到:
评论

相关推荐

    C++命名空间小结

    C++命名空间理解及小结,命名空间的使用方法。

    Qt命名空间 Qt namespace

    通过分析和运行这个示例,你可以更直观地理解Qt命名空间的实际应用。 总的来说,理解并熟练使用Qt命名空间是进行Qt开发的基础。正确地管理和使用命名空间能够提高代码的可读性和可维护性,同时避免潜在的命名冲突...

    c++ 命名空间

    - **增强代码可读性**:显式指定命名空间可以帮助读者更好地理解代码,尤其是对于大型项目来说。 **局限性**: - **潜在的命名空间污染**:虽然`using namespace std;`非常方便,但可能会导致命名空间污染,即多个...

    C#自定义命名空间与使用自定义的命名空间方法

    #### 一、理解命名空间在C#中的作用 在C#中,命名空间(Namespace)是一种组织代码的方法,它帮助开发者避免命名冲突,使代码结构更加清晰。通过命名空间,可以将相关的类、接口、枚举等类型组织在一起,形成逻辑上...

    php命名空间小结

    命名空间在PHP中是一个至关重要的概念,自PHP 5.3版本引入,它提供了一种组织和管理代码的...正确理解和使用命名空间是每个PHP开发者必备的技能。在实际开发中,合理规划和利用命名空间,可以显著提升项目的代码质量。

    小组学习:C#命名空间

    在小组学习中,深入理解C#命名空间可以帮助成员更好地组织代码,提高代码的可读性和可维护性,减少错误,并促进团队间的合作。 通过以上内容,我们可以看到命名空间在C#编程中的重要性,它是代码结构化和模块化的...

    WebApi返回xml格式时去除命名空间

    默认情况下,WebAPI生成的XML数据会包含命名空间信息,这可能导致客户端处理数据时的不便。本文将深入探讨如何在C#中使用WebAPI去除返回XML数据时的命名空间。 首先,我们需要了解XML命名空间的作用。XML命名空间是...

    C#命名空间详解

    ### C#命名空间详解 在深入探讨C#的命名空间之前,我们首先应当明确命名空间在C#语言中的核心作用。命名空间是C#中用于组织类和其他类型的一种机制,它...正确理解和运用命名空间,将使C#程序结构更加清晰、易于维护。

    protobuf中的命名空间使用demo(C++)

    protobuf是Google开发的一种高效、灵活的数据序列化协议,它允许结构化的数据以二...理解并正确使用protobuf的命名空间(包)对于有效管理和组织代码至关重要,特别是在大型项目中,它可以提高代码的可读性和可维护性。

    spring各种命名空间实例

    下面,我们将深入探讨Spring的各种命名空间及其关键元素,以便更好地理解和应用这一强大框架。 #### 1. beans命名空间 `beans`命名空间是最基础也是最核心的命名空间,用于定义和管理Bean。在Spring配置文件中,`...

    Silverlight命名空间

    总之,理解并正确使用Silverlight的命名空间是创建高效且可维护的XAML代码的关键。通过定义和使用命名空间,开发人员能够组织和重用代码,同时使XAML更易于理解和调试。虽然Silverlight现在已被弃用,但它的许多概念...

    .net命名空间解释列表

    这样的资源对于开发者来说非常实用,因为它可以帮助他们快速理解和查找特定功能的类或方法所在的命名空间,从而提高开发效率。 描述中提到,这个工具是个人制作的自用查询工具,用C#语言编写。C#是.NET框架的主要...

    C#基础知识\Visual C#命名空间详解.doc

    在C#编程语言中,命名空间(Namespace)是...总之,C#的命名空间是代码组织的重要工具,通过合理地使用命名空间和`using`语句,可以使代码更易于理解和管理。理解并熟练掌握这些概念,对于编写高质量的C#代码至关重要。

    .net 命名空间总结

    为了更好地理解命名空间的作用,我们来看一个简单的示例: ```csharp using System; namespace MyApplication { public class Program { public static void Main() { Console.WriteLine("Hello, World!"); }...

    XPATH读取有命名空间的节点

    总结来说,处理带有命名空间的XML文档,特别是在使用XPath时,需要理解XML命名空间的概念,掌握DOM4J的命名空间注册方法,并能够正确构造XPath表达式。这样,即使面对复杂的XML结构,也能游刃有余地进行数据提取和...

    struts2中命名空间的使用

    希望本文能帮助您更好地理解Struts2中命名空间的使用方法。 #### 六、参考资源 - [Struts2官方文档](https://struts.apache.org/) - [Struts2命名空间详解]...

    C#语言进行编译的命名空间详解

    C#语言中的命名空间是组织代码的一个重要机制,它允许开发者将相关的类、接口和枚举等编程元素分组在一起,提高代码的可读性和可维护性。...理解和熟练使用这些命名空间是成为高效C#开发者的必要步骤。

    WCF 返回XML去除默认命名空间实例Demo

    当WCF服务返回XML时,它会默认添加一个命名空间,以确保数据的唯一性和可识别性。然而,在某些情况下,我们可能希望去除这些默认命名空间,以简化处理或满足特定需求。 **去除默认命名空间** 的主要目的是减少XML的...

    C#常用命名空间和类

    在深入探讨C#的常用命名空间和类之前,我们首先需要理解什么是命名空间。命名空间在C#中扮演着组织代码的重要角色,它提供了一种防止名称冲突的方式,尤其是在大型项目或库中,多个类可能拥有相同的名字。通过将相关...

Global site tag (gtag.js) - Google Analytics