回答重点

静态方法
- 使用static关键字修修饰的方法
- 属于类
- 随着类的加载而加载,随着类的卸载而消失
- 可以通过类名直接调用,也可以通过对象调用,但是这种方式不推荐,会混淆意义,也不利于后期维护与扩展
class Example {static void staticMethod() {System.out.println("这是一个静态方法");}
}
public class Main {public static void main(String[] args) {Example example = new Example();example.staticMethod(); // 通过对象调用静态方法}
}
- 可以访问类的静态变量和其他静态方法,不能直接访问实例变量和实例方法
实例方法
- 不适用static关键字修饰的方法
- 属于对象
- 必须通过对象调用
- 可以访问实例变量和实例方法,也可以访问静态变量和静态方法
- 随着对象的创建而存在,随着对象的销毁而消失

注意事项
- 静态方法中不能使用this关键字,因为this代表当前对象,而静态方法属于类
- 静态方法可以被重载,但是不能被子类重写,因为方法信息在编译时就存在方法区中了,实例方法可以被重载也可以被重写
- 静态方法不支持子类重写,所以也不具有多态性,即不支持方法在运行时动态绑定