java static关键字

static关键字英文意思是静态的
一:static关键字修饰变量、方法、代码块
①修饰变量
变量有两种:类变量/类成员、成员变量
如何理解呢?
一个类中定义一个变量,如果有static修饰,则该变量为类变量,否则称为成员变量
类变量的性质如下:
性质①内存分配时机:JVM加载类的时候
性质②在内存中位置:方法区,所有实例共享
性质③访问方式:可以通过对象访问,也可以通过类名直接访问(推荐)
成员变量
性质①内存分配时机:实例化的时候
性质②在内存中位置:堆中,彼此独立
性质③访问方式:只能通过对象访问
在这里插入图片描述
②修饰方法
static修饰方法,该方法称之为静态方法,也称为类方法,否则为非静态方法
类方法的性质:
A:同一个类中,静态方法只能访问静态资源(静态方法和静态属性),不能访问非静态资源
B:类与类之间,静态方法可以通过对象访问,也可以通过类名直接访问
C:静态方法中不能使用this,super,因为this和super的使用场景是在创建对象的基础上才会使用
成员方法:在同一个类中,成员方法所有资源(包括静态的和非静态的)都可以访问
类与类之间,只能通过对象访问

另外,有一个比较好的博客,参考一下,Java中静态方法,非静态方法,静态变量,非静态变量四者之间的关系 https://blog.csdn.net/doit_kang/article/details/83376985
③修饰代码块
①静态代码块的作用:初始化类,类加载时候执行,只执行1次。
②非静态代码块的作用:初始化对象(和构造函数相同),实例化对象的时候执行,每次实例化都会执行

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值