java之静态变量和成员变量不同

变量分类

静态变量 : 类中使用static修饰
成员变量 : 类中非static修饰
局部变量 : 方法中声明的变量是局部变量,作用域让当前方法使用
例:
public class A{
//a为静态变量
static int a = 10;
//b为成员变量
int b = 3;
public static void main(String[] args){
//c为局部变量
int c = 2;
System.out.println(a);
System.out.println(b);
System.out.println©;
}
}

初始化时机

  • 静态变量 : 类加载阶段初始化
  • 成员变量 : 创建对象的时候初始化(构造方法)
    什么是类加载阶段呢?可以简单理解为main方法加载之前,静态变量和静态语句块无优先级高低,从上向下加载的过程。
    什么是创建对象初始化呢?
    例:对于class student{java代码块;}
    student a = new student();
    a.xxxx
    来二次调用的过程就是创建对象初始化,可以有参也可无参。

应用场景

静态变量 : 类级别的,是所有对象共享的.不可修改且相同
成员变量 : 对象和对象之间有相同的属性,但是可能有不同的值,非对象共享

举个例子
这是个学生类
在这里插入图片描述
主类和main方法
在这里插入图片描述
输出结果
在这里插入图片描述
希望可以对你有所帮助。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值