Skip to content

关于 “在一个静态方法内调用一个非静态成员为什么是非法的” 一点个人理解 #1126

Open
@daochen23

Description

@daochen23

问题

为什么在静态方法内调动一个非静态的成员是非法的?

我的理解

  • 首先,static 修饰的成员变量和方法是属于类的,它随着类的加载而加载,随着类的消失而消失
  • 而那些非 static 修饰的普通成员变量是属于类的实例的,也就是对象的,它们只有在类的实例化之后才会被加载
  • 所以静态的成员变量和静态方法比非静态的成员变量和方法优先加载

总结

一个优先加载的去调用一个还没有加载的当然是非法的了

Metadata

Metadata

Assignees

No one assigned

    Labels

    discussdiscuss a problem

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions