局部变量 静态变量staic 全局变量

来源:互联网 发布:网络家长学校 编辑:程序博客网 时间:2024/06/06 05:41

   基础概念就不用多讲,相信大家都知道,不知道很用以查到对应的资料,现在就把比较明显的差别根据本人所掌握的介绍一下:

  局部变量:函数中定义的变量称为局部变量。

      1、一个函数中定义的变量不能被另一个函数使用。

      2、每次调用函数时局部变量都表示不同的存储空间。

      方法内部定义的变量,在程序执行到它的时候,系统为它在栈上分配空间。而方法在栈上分配的空间在此方法执行结束时会释放掉。这样就产生一个问题:如果想将方法中此变量的只保存至下一次调用时,如何实现?

      最容易想到的方法是定义一个全局变量,但定义一个全局变量有许多缺点,最明显的缺点是破坏了此变量的访问范围(使得在此方     法中定义的变量,不仅仅受此方法控制)。使用static就可以解决此问题,被static修饰的变量称为静态变量。 

      从面向对象的角度出发,当需要一个数据对象为整个类而非某个对象服务,同时又力求不破坏类的封装性,既要求此成员隐藏在类的   内部,又要求对外不可见的时候,就可以使用static关键字。

      静态变量还有以下优点:可以节省内存,它使所有对象所公有的,所以对多个对象来说,静态变量只存储一处,供所有对象共用。     静态变量的值对每个对象都是一样,但它的值是可以更新的。只要某一个对象对静态变量的值更新一次,所有对象都能访问更新后的   值,这样可以提高时间效率。

原创粉丝点击