Java中的static关键字

在Java中,存在着两种类型的变量,一种是实例变量,另外一种是类变量,也称为静态变量,用static关键字来修饰。

被static所修饰的变量和方法,

1.可以直接通过类名来调用,而不必实例化对象

静态变量和静态方法在类创建的时候,就一起创建,比构造函数、对象创建还早,和实例变量、方法不同,可以直接调用。

2.生命周期最长。

随着类的加载而加载,随着类的消失而消失,因此活得老长老长了,故称生命周期最长。

3.可以用任何方法来访问,不能使用this、super这种实例对象关键字。

因为this、super关键字表示的是实例化对象的引用,而static关键字修饰的变量和方法 在实例化对象之前就已经存在了,对于已经存在的对象(不论静态还是实例),非静态方法当然可以访问了,而理所当然的,静态方法不可能访问还不存在的实例变量和实例方法啦。

4.存放在JVM的方法区中,可开发工具类。

用static关键字修饰工具类中的方法,就可以直接用类名去调用这个方法。

static所修饰的变量和方法,只会在内存中存在一次,存放在方法区(方法区包含了常量和静态),不用每次都像实例变量或方法一样都要在堆内存中开辟内存空间。

不好的就是不能像实例变量和方法一样在规矩下随意访问。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值