zoukankan      html  css  js  c++  java
  • static(静态)关键字

    class Person
    {
        String name;    //成员变量,实例变量
        static String country = "CN";    // 静态变量,类变量
    }
    

    static关键字

    用于修饰成员(成员变量和成员函数),既是关键字也是修饰符
    

    被修饰后的成员具备一下特点:

    1.随着类的加载而加载
    2.优先于对象存在
    3.被所有对象共享
    4.可以直接被类名调用
    5.修饰的数据是共享数据,对象中的存储的是特有数据
    

    成员变量和静态变量的区别

    1.两个变量的生命周期不同
        成员变量随着对象的创建而存在,随着对象的被回收而释放
        静态变量随着类的加载而存在,随着类的消失而消失
    
    2.调用方式不同
        成员变量只能被对象调用
        静态变量可以被对象调用,还可以被类名调用,(建议静态变量用类名调用,一看就知道这是个静态变量)
    
    3.别名不同
        成员变量称为实例变量
        静态变量称为类变量
    
    4.数据存储位置不同
        成员变量数据存储在堆内存的对象中,所以也叫对象的特有数据
        静态变量数据存储在方法区(也叫静态区),所以也叫对象的共享数据
    

    使用注意

    1.静态方法只能访问静态成员
    2.静态方法中不可以写this。super关键字
    3.主函数是静态的
  • 相关阅读:
    Java
    Leetcode 计划
    Java虚拟机
    浅谈 MVP in Android
    【PAT】B1074 宇宙无敌加法器(20 分)
    【PAT】B1076 Wifi密码(15 分)
    【PAT】B1075 链表元素分类(25 分)
    【PAT】B1077 互评成绩计算(20 分)
    【PAT】B1078 字符串压缩与解压(20 分)
    【PAT】B1079 延迟的回文数(20 分)
  • 原文地址:https://www.cnblogs.com/lei--lei/p/9495498.html
Copyright © 2011-2022 走看看