静态成员属于类,被所有实例共享,通过类名调用;实例成员属于对象,每个实例独立拥有。
在Java中,理解静态成员和实例成员的区别是掌握类与对象行为的关键。它们的核心差异在于归属对象不同:静态成员属于类本身,而实例成员属于具体的对象实例。
静态成员使用 static 关键字声明,包括静态变量和静态方法。这类成员不依赖于任何对象实例,可以直接通过类名调用。

Math.sqrt() 或自定义的 StringUtils.isEmpty()
实例成员没有 static 修饰,属于每个对象独立拥有。只有创建类的实例后,才能访问这些成员。
Person p = new Person(); 中,p.getName() 调用的是该特定 person 的实例方法选择使用哪种成员取决于设计需求: