基础知识

  • 想到哪记到哪

static关键字

静态变量:

  • 属于一个类,而不是这个类的对象,类无论被初始化多少次 这个变量都在这个类的所有对象中共享。
  • 直接通过类名来访问,不需要初始化这个类才能访问
  • 静态变量存储在java虚拟机中 的元空间中

静态方法:

  • 在编译时解析
  • 同样属于一个类,而不是类的对象
  • 静态方法不能被重写
  • 成员方法可以访问静态方法和静态变量
  • 静态方法可以方法其他静态方法和变量,无法访问普通方法变量

静态代码块:

  • 在类加载的时候就调用,而且只会调用一次
  • 帮助初始化静态变量
  • 一个类可以有多个静态代码块,执行顺序和代码顺序一致

静态内部类:

  • 静态内部类可以访问外部类的静态方法 静态变量
  • 不能访问外部类的普通方法
  • 外部类不能是static

调用静态方法、静态变量的时候jvm会去进行类加载,需要知道学习类的加载时机

类在什么时候加载,类的加载时间

  • 实例化对象,new 一个对象的时候
  • 访问类的静态变量
  • 访问类的静态方法
  • 初始化类的子类
  • 虚拟机启动的时候,定义了main方法的那个类
  • 反射
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容