• static


    static : 是一个访问修饰符,用来修饰对象的成员属性和成员方法。

    当成员用static修饰后,不仅可以用对象调用,还可以直接通过类名来调用。

    static的成员在内存中不是放在堆内存,而是放在 一个共享区包括 方法区(类中的方法,静态成员)、数据区等

    特点:

    1.随着类的加载来加载,随着类的消失而消失,也就是说他的生命周期最长。

    2.优先于对象存在。

    3.为所有对象所共享

    4.不仅可以被对象引用,还可以直接通过类名来调用

      类变量 实例变量
    内存 存在于方法区中 存在于堆内存中

    生命周期

    生命周期最长,随类的建立而建立,消失而消失 随着对象的建立和消失而建立和消失

    静态使用注意事项:

    1.静态方法只能访问静态成员(方法和变量);非静态方法可以访问静态方法

    2.静态方法中不可以定义this super 关键字,因为静态优先于对象存在,this 和super均是对象的引用

    3.主函数是静态的

    它的优缺点:

    优点:对对象共享的共享数据进行单独空间的存储,节省内存空间; 可以被类名直接调用,而不一定要定义对象。

    缺点:但是它的声明周期过长,且访问有一定的局限性。

    什么时候使用static呢? 可以从两方面来说,因为static可以用来修饰变量和方法

    什么时候定义static 变量呢?

    A: 当对象中出现共享数据时,该数据被静态所修饰

    什么时候定义static方法呢?

    A:当功能方法内部没有访问到非静态数据(对象特有数据)时,那么该功能可以定义成静态的。

  • 相关阅读:
    PHP学习笔记
    $POST 、$HTTP_RAW_POST_DATA、php://input三者之间的区别
    APACHE支持.htaccess以及 No input file specified解决方案
    PHP常用函数总结
    PHP网页的工作原理
    Lamp源码安装参考教程
    php相关配置
    PHP技巧:提高PHP性能的53个技巧
    面向对象工具
    面向对象基础
  • 原文地址:https://www.cnblogs.com/Lillian-1304/p/Static.html
Copyright © 2020-2023  润新知