问题描述
public class StaticTest {private int num1;private static int num2;private int num3;static {num2 = 10;System.out.println(" init num");}public StaticTest() {num1 = 10;num3 = 10;}public void f1(int num1, int num3) {num1 = 20;num2 = 20;num3 = 20;}public void print() {System.out.println(" num1=" + num1);System.out.println(" num2=" + num2);System.out.println(" num3=" + num3);}public static void main(String[] args) {StaticTest test = new StaticTest();test.f1(20, 20);test.print();}}输出结果为: init num num1=10 num2=20 num3=10对num1,num3的值实在是不解,求真相 问题补充:恩,全局变量与局部变量的问题,取了相同的名字给迷惑了,见笑了chen_yongkai 写道
解决方案
吐血!又是这种问题你去看看这个问题,类似的http://www.iteye.com/problems/71456
解决方案二:
[url]http://www.iteye.com/problems/71456 [/url]
时间: 2024-10-27 22:04:38