zoukankan      html  css  js  c++  java
  • 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.调用不同

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

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

  • 相关阅读:
    LeetCode【125. 验证回文串】
    LeetCode【122. 买卖股票的最佳时机 II】
    LeetCode【121. 买卖股票的最佳时机】
    LeetCode【119. 杨辉三角 II】
    LeetCode【118. 杨辉三角】
    LeetCode【112. 路径总和】
    PAT1024
    PAT1020
    PAT1018
    PAT1017
  • 原文地址:https://www.cnblogs.com/zijeak/p/10596695.html
Copyright © 2011-2022 走看看