类变量和类方法

简介: 类变量和类方法

类变量和类方法

  • 使用场景:当我们需要让某个类的所有对象都共享一个变量时,就可以考虑使用类变量。
  • 类变量与实例变量的区别:类变量时该类所有对象共享的,而实例变量是每个对象独享的。
  • 加上static称为类变量或者静态变量,否则称为实例变量、普通变量、非静态变量。
  • 类变量可以通过 类名.类变量名 或者 对象名.类变量名 来访问,但java设计者推荐我们使用 ==类名.类变量名== 方式来访问。【前提是满足访问修饰符的访问权限和范围】
  • 实例变量不能通过 类名.变量名 访问。
  • 类变量在类加载的时候就初始化了,即使没有创建对象,只要类加载了,就可以使用类变量,、
  • 类变量的生命周期是随类加载开始,随类消亡而销毁。
    注意事项
  1. 类方法和普通方法都是随着类的加载而加载,将结构信息存储在方法区:类方法中无this参数(普通方法中隐含着this的参数)
  2. 类方法可通过类名调用,也可通过对象名调用。
  3. 普通方法和对象有关,需要通过对象名.方法名(参数),不能通过类名调用。
  4. 类方法中不允许使用和对象有关的关键词,例如this和super
  5. 类方法中只能访问静态方法或静态变量。
  6. 普通成员方法,既可以访问非静态成员,也可以访问静态成员。
相关文章
|
8月前
|
存储
成员变量和类变量的区别:
成员变量和类变量的区别:
144 0
内部类的概念与分类(成员内部类,局部内部类,匿名内部类)
内部类,就是一个类内部包含另一个类,即一个事物的内部包含着另一个事物。例如:身体和心脏 、汽车与发动机之间的关系。 可以看见在out下的内部类文件命名规则是 外部类$内部类.class类名称 对象名 = new 类名称();外部类名称.内部类名称 对象名 = new 外部类名称().new 外部类名称(); 把这条公式插入到demo07InnerClass 中 使用heart.调用内部类方法 如果一个类是定义在一个方法内部的,那么这是一个局部内
56 2
无法利用ArxWizMFCSupport添加新类?
无法利用ArxWizMFCSupport添加新类?
静态方法与非静态方法的区别
静态方法与非静态方法的区别
206 0
|
Java
16 类变量(静态变量)与类方法(静态方法)
1 .静态变量 静态变量指在类中被static修饰的变量
111 0
|
开发者 Python
类方法和静态方法 | 学习笔记
快速学习类方法和静态方法,介绍了类方法和静态方法系统机制, 以及在实际应用过程中如何使用。
类方法和静态方法 | 学习笔记
|
开发者 Python
类方法和静态方法回顾|学习笔记
快速学习类方法和静态方法回顾
类方法和静态方法回顾|学习笔记
|
Python
一日一技:什么情况使用静态方法和类方法?
一日一技:什么情况使用静态方法和类方法?
248 0
一日一技:什么情况使用静态方法和类方法?
|
Python
Python - 面向对象编程 - 类变量、实例变量/类属性、实例属性
Python - 面向对象编程 - 类变量、实例变量/类属性、实例属性
245 0
Python - 面向对象编程 - 类变量、实例变量/类属性、实例属性
|
Python
盘点一个面向对象的类变量和实例变量问题
盘点一个面向对象的类变量和实例变量问题
401 0
盘点一个面向对象的类变量和实例变量问题