静态方法中不能引用非静态变量
静态方法中不能引用非静态变量
静态方法中不能引用非静态变量
静态方法可以通过所在类直接调用而不需要实例化对象,非静态成员变量则是一个对象的属性。它只有在有实例化对象时才存在的,所以在静态方法中是不可以调用静态变量。如果发生调用,则编译器会报出如上的错误。
例如:
由于main方法其实是一个静态方法,而maxProfit方法并没有实例化,所以会报错 错误: 无法从静态上下文中引用非静态 变量 this
修改方法:
只需要实例化调用的静态变量所属对象即可。