Java——static

Posted on   呵护下得雪  阅读(15)  评论(0编辑  收藏  举报

 static

static 静态的 用于修饰成员变量和成员方法(没有被static修饰的变量同时也成为:实例变量。)

特点

  • 随着类的加载而加载。
  • 优先于对象存在。
  • 被雷得所有对象共享。
  • 可以通过类名调用。

 作用(成员变量、成员方法、代码块、内部类)

1、成员变量

Java中可以通过static关键字修饰变量达到全局变量的效果。

 static修饰的变量是静态变量,属于类。

2.成员方法

static修饰的方法为类方法,

 3.代码块

Java在执行类时,会执行static代码快,static代码块常用于初始化静态变量,static代码块只会在类被加载时执行一次。

执行顺序:静态代码块>构造代码块>构造方法

private static String nameString="zzz";
static {
nameString="aaa";
}
public static void main(String[] args) {
System.out.println(nameString);
}

输出结果:aaa

4.内部类

static内部类可以不依赖外部类实例对象而被实例化,而内部类需要在外部类实例化后才能被实例化。

 注意事项

  • 静态的方法只能访问静态的成员
  • 非静态的方法既能访问静态的成员变量和成员方法,又能访问非静态的成员变量和成员方法
  • 静态方法中不能使用this关键字。因为静态优先于对象存在,所以静态方法不可以出现this。
  • 局部变量不能被static修饰

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

  • 所属不同

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

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

  • 内存中位置不同

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

成员变量存储于堆内存中。

  • 内存出现的时间不同

静态变量随着类的加载而加载,随着类的消失而消失。

成员变量随着对象的创建而存在,随着对象的消失而消失。

  • 调用不同

静态变量可以通过类名调用,也可以通过对象调用。

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

 

 

 

 

 

 

 

 

 

 

 

 

 

 

相关博文:
阅读排行:
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· Docker 太简单,K8s 太复杂?w7panel 让容器管理更轻松!

随笔 - 1, 文章 - 0, 评论 - 0, 阅读 - 15

Copyright © 2025 呵护下得雪
Powered by .NET 9.0 on Kubernetes

点击右上角即可分享
微信分享提示