对于姓名,年龄,学号来说,每个对象都要自己独立的数据
但是对于所在教室来说,这应该是多个对象共享同一份数据

只在类中保存唯一一份,那所有本类对象共享同一份

一旦用了static关键字,那么这样的内容不再属于对象自己,而是属于类的,所以凡是本类的对象,共享同一份

如果一个成员变量使用static关键字,那么这个对象不再属于某个对象,而是属于某一个类

一旦使用了static修饰成员方法,那么这就成为了静态方法
静态方法不属于对象,而是属于类的
如果没有关键字static,那么必须要创建对象,然后通过对象才能使用它

对于静态方法,可以直接使用类名来进行调用,也可以直接通过类名来进行调用

无论是成员变量还是成员方法,如果有了static,都推荐使用类名称来进行调用
静态变量:类名称.静态变量
静态方法:类名称.静态方法()

对于本来当中的静态方法,可以省略类名称

注意事项:
静态只能直接访问静态,不能直接访问非静态

成员方法可以访问静态变量
原因:因为在内存中先有的静态内容后有的非静态,后人知道先人,先人不知道后人

静态方法当中不能使用this
静态方法跟对象没有关系,不能使用this关键字

根据类名称访问静态成员变量的时候,全程和对象就没关系
只和类有关系

静态代码块的格式
public class 类名称{
static{
sout("静态代码块“”)
}

}

每当第一次使用本类时,静态代码执行唯一的一次
静态内容总是优先于非静态,
所以静态代码块比构造方法先

静态代码块,用来一次性对静态成员变量进行赋值

20181224——Java中静态static
当第二次利用构造函数创建对象的时候,就不在执行静态代码块的执行了

相关文章:

  • 2022-02-09
  • 2021-10-16
  • 2021-08-28
  • 2022-12-23
  • 2021-12-25
  • 2022-12-23
  • 2022-12-23
  • 2021-11-19
猜你喜欢
  • 2022-12-23
  • 2021-08-15
  • 2021-11-27
  • 2021-11-25
  • 2021-05-29
  • 2021-10-08
  • 2021-08-15
相关资源
相似解决方案