命名空间(名称空间)

命名空间一共分为三种:

  全部命名空间

  局部命名空间

  内置命名空间

命名空间:

  当程序运行时,代码从上至下一次读取,遇到变量与值,# 他会在内存中开辟一个空间,存放变量与值的内存地址的对应关系,这样存储变量与值得对应关系的空间叫做名称空间(命名空间)。

局部名称空间:

   当解释器遇到函数时,他会将函数名存储在内存中,但是对于函数体莫不关心。# 当函数执行时,他会通过函数名找到函数体,然后将函数体里面的变量等对应关系存放在一个#临时开辟的空间中,随着函数的结束,临时的空间关闭,这样的空间叫做临时名称空间(局部名称空间)

作用域:

  作用域就是作用范围,按照生效范围可以分为全局作用域和局部作用域。

全局作用域:
   包含内置名称空间、全局名称空间,在整个文件的任意位置都能被引用、全局有效
 
局部作用域:
   局部名称空间,只能在局部范围内生效
加载顺序:
 1,内置命名空间(程序运行前加载)->
 2,全局命名空间(程序运行中:从上到下加载)->
 3,局部命名空间(函数运行时:调用时才加载)
 
取值顺序:从内到外,单向找
   在局部调用:局部命名空间->全局命名空间->内置命名空间
   在全局调用:全局命名空间->内置命名空间

    

原文地址:https://www.cnblogs.com/Darry-Ring/p/11865249.html