方法中的增量计数器不适用于java

时间:2015-08-14 16:59:25

标签: java

我正在开发两个独立的程序,涉及来自每一方的方法调用。程序A是MyNoteCenter.java,程序B是SocketServer.java。在MyNoteCenter中有一个方法调用来触发SocketServer中用于下载资源的方法,因此SocketServer中的计数器将增加1.当我单击MyNoteCenter内的按钮下载时,它将联系SocketServer以获取下载请求和增量如果SocketServer收到有效的参数,但为什么我的计数器只上升一次?它只会在我第一次点击下载按钮时运行良好但是当我第二次点击时,计数器仍显示1

这是我的SocketServer程序的一部分

k

这是MyNoteCenter中的方法,该方法将在btn2点击后触发下载按钮,runCC方法将联系SocketServer方法进行下载

 public String getDownload()
{
    int c = 0;
    c = c + 1;
    switch(software)
    {

        case "1" :
            message = "ITune";
        //    counter++;
            break;

        case "2" :
            message = "ZoneAlarm";
        //  counter++;
            break;

        case "3" :
            message = "Winrar";
        //  counter++;
            break;

        case "4" :
            message = "Audacity";
        //  counter++;
            break;

    }

    JOptionPane.showMessageDialog(null,"Your download is\n" +message+ "\n the number of download is\n"+c);
    return message;

}

http://codepad.org/>>我的完整SocketServer程序

1 个答案:

答案 0 :(得分:0)

每次运行该方法时,您都在重新初始化c

c应该是在类中定义的字段,每次需要递增它时都会保持值,或者评估它的当前值。

 public class MyClass {

    private int c = 0;


    public String getDownload() {
       c++;

       switch case...
    }

 }