Java中静态变量只能是成员变量,局部方法中的局部变量除final外不能有任何其他修饰符,例如: public class Test { static String x = "1"; static int y = 1; public static void main(String args[]) { static int z = 2; //报错,无论是普通局部方法还是静态局部方法,内部的局部变量都不能有修饰符 System.out.println(x + y + z); } publi…
主要是记录一个奇葩的现象,java类中的静态变量,不仅可以通过类名称直接调用,而且还可以通过类的实力对象调用,java是不存在静态类的,如果非要用静态的类那就是内部类. 类中的静态变量是存储在JVM方法区中,线程共享的. public class HasStatic { public static int x = 100; public static void main(String args[]) { HasStatic hasStatic1 = new HasStatic(); hasSta…
知识回顾 上一篇总结了java中成员变量和局部变量的区别,这一篇将总结静态变量和实例变量的一些特性和区别. 示例代码 package Variable; public class VariableDemo { //实例变量 int a; //静态变量 static int b; public static void main(String[] args) { System.out.println(VariableDemo.b);//静态变量可以直接被类调用,实例变量不可以 //新建一个对象 va…
静态变量: 在类内部中,方法的外部声明的对象而且加上static; 实例变量: 在类内部中,声明不需要加static; 比如: public class Demo{ int i1=0; static int i2=0; public void main(String[] args){ //报错,无法直接输出i1,实例对象 System.out.println(i1); //可以直接输出i2,静态变量 System.out.println(i2); Demo D1=new Demo(); Syst…