7、static关键字

一 static关键字

1.1 static关键字

  • 在类中,用static声明的成员变量为静态成员变量,它为该类的公用变量,在第一次使用时被初始化,对于该类的所有对象来说,static成员变量只有一份
  • 用static声明的方法为静态方法,在调用该方法时,不会将对象的引用传递给它,所以在static方法中不可访问非static的成员变量
    • 静态方法不再是针对某个对象调用,所以不能访问非静态成员
  • 可以通过对象引用或类名(不需要实例化)访问静态成员

 

如下面一段代码

public class Cat {
     private static int sid = 0;
     private String name;
     int id;

     Cat(String name) {
          this.name = name;
          id = sid++;
     }

     public void info() {
          System.out.println("My name is " + name + "No." + id);
     }

     public static void main(String[] args) {
          Cat.sid = 100;
          Cat mimi = new Cat("mimi");
          Cat pipi = new Cat("pipi");
          mimi.info();
          pipi.info();
     }
}

内存分布图如下所示,中间过程省略

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值