标签:
1 public class Demo { 2 static int i = 10; 3 int j; 4 Demo() { 5 this.j = 20; 6 } 7 public static void main(String[] args) { 8 System.out.println("类变量 i=" + Demo.i); 9 Demo obj = new Demo(); 10 System.out.println("实例变量 j=" + obj.j); 11 } 12 }
运行结果:
类变量 i=101 public class Demo { 2 static int i; 3 int j; 4 public static void main(String[] args) { 5 Demo obj1 = new Demo(); 6 obj1.i = 10; 7 obj1.j = 20; 8 9 Demo obj2 = new Demo(); 10 11 System.out.println("obj1.i=" + obj1.i + ", obj1.j=" + obj1.j); 12 System.out.println("obj2.i=" + obj2.i + ", obj2.j=" + obj2.j); 13 } 14 }
运行结果:
obj1.i=10, obj1.j=201 public class Demo { 2 static int sum(int x, int y){ 3 return x + y; 4 } 5 public static void main(String[] args) { 6 int sum = Demo.sum(10, 10); 7 System.out.println("10+10=" + sum); 8 } 9 }
运行结果:
10+10=201 public class Demo { 2 public static int i; 3 static{ 4 i = 10; 5 System.out.println("Now in static block."); 6 } 7 public void test() { 8 System.out.println("test method: i=" + i); 9 } 10 public static void main(String[] args) { 11 System.out.println("Demo.i=" + Demo.i); 12 new Demo().test(); 13 } 14 }
运行结果是:
Now in static block.1 import packageName.className; // 导入某个特定的类
或
1 import packageName.*; // 导入包中的所有类
而静态导入可以这样写:
1 import static packageName.className.methonName; // 导入某个特定的静态方法
或
1 import static packageName.className.*; // 导入类中的所有静态成员
导入后,可以在当前类中直接用方法名调用静态方法,不必再用 className.methodName 来访问。
1 import static java.lang.System.*; 2 import static java.lang.Math.random; 3 public class Demo { 4 public static void main(String[] args) { 5 out.println("产生的一个随机数:" + random()); 6 } 7 }
运行结果:
产生的一个随机数:0.05800891549018705Java知多少(31)static关键字以及Java静态变量和静态方法
标签:
原文地址:http://www.cnblogs.com/Coda/p/4414272.html