• Java中的Static关键字


    Static关键字

    1.定义

       方便在没有创建对象的情况下来进行调用(方法/变量),Java提供了static修饰符,用来修饰静态变量和方法。

    2.特点

        A.随着类的加载而加载

        B.优先于对象存在

        C.被类的所有对象共享

        D.可以通过直接通过类名调用,也可以通过对象名调用

    3.内存解释

        用Static修饰的静态变量和方法,在类(class文件)被加载时,自动地在方法区中的“静态区”分配内存。

    4.注意事项

        A.在静态方法中是没有this关键字的

            例如:以下代码会报错:无法从静态上下文中引用非静态变量num

    class Teacher{
      public int num=10;
      public static void show(){
        System.out.println(num);
        System.out.println(this.num);
      }
    }

        B.静态方法只能访问静态成员变量和静态成员方法,不能访问非静态变量和非静态方法

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

        A.所属不同

            静态变量属于类,所以也称作类变量

            成员变量属于对象,所以也成为实例变量(对象变量)

        B.内存中的位置不同

            静态变量存储于方法区的静态区

            成员变量存储于堆内存

         C.内存出现时间不同

            静态变量随类的加载而出现,随类的消失而消失

            成员变量随对象的创建而出现,随对象的消失而消失

         D.调用不同

            静态变量可以通过类名或者对象名调用

            成员变量只能通过对象名来调用

  • 相关阅读:
    MFC学习之程序执行过程梳理
    二分法插入排序
    内存泄漏以及常见的解决方法
    Ant命令行操作
    Android Intent的几种使用方法全面总结
    YII 页面缓存
    JAVA修饰符类型(public,protected,private,friendly)
    unity3d插件Daikon Forge GUI 中文教程-5-高级控件listbox和progress bar的使用
    ostringstream的使用方法
    程序猿接私活经验总结,来自csdn论坛语录
  • 原文地址:https://www.cnblogs.com/zijeak/p/10596695.html
Copyright © 2020-2023  润新知