Java 未使用该字段的值

Java 未使用该字段的值,java,eclipse,Java,Eclipse,就在private int count=0之前,我在eclipse上得到了上述警告 这是我的密码: package synchronise; public class Mysync { private int count=0; public Mysync() { // TODO Auto-generated constructor stub } public static void main(String[] args) {

就在
private int count=0之前,我在eclipse上得到了上述警告

这是我的密码:

package synchronise;

public class Mysync {

    private  int count=0;

    public Mysync() {
        // TODO Auto-generated constructor stub
    }

    public static void main(String[] args) {
        // TODO Auto-generated method stub
        Mysync sync = new Mysync();
        sync.dowork();

    }

    public void dowork(){

        Thread mysync = new Thread(new Runnable() {

            public void run() {
                // TODO Auto-generated method stub

                for(int i=0; i<2000; i++){
                    // System.out.println()

                    count++;
                }


            }
        });

        Thread mysync2 = new Thread(new Runnable() {

            public void run() {
                // TODO Auto-generated method stub

                for(int i=0; i<2000; i++){
                    // System.out.println()

                    count++;
                }


            }
        });
        mysync.start();
        mysync2.start();

        try {
            mysync.join();
            mysync.join();
            } catch (InterruptedException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }

    }

}
包同步;
公共类Mysync{
私有整数计数=0;
公共Mysync(){
//TODO自动生成的构造函数存根
}
公共静态void main(字符串[]args){
//TODO自动生成的方法存根
Mysync sync=新建Mysync();
sync.dowork();
}
公共工作{
Thread mysync=新线程(new Runnable()){
公开募捐{
//TODO自动生成的方法存根

对于(int i=0;i来说,
count
的唯一用法是更新它-因为你从来没有用这个值做过任何事情,所以可以安全地删除它,以及增加它的位置。

如果你想修复警告,就使用它

例如

警告将消失

警告表示编译代码时,优化可能会删除无用的代码

在这里,无用的代码意味着它和输出无关,因为软件就是输入
和输出。

您声明了两个线程(mysync和mysync2,然后您对它们不做任何操作,这意味着count永远不会递增(即count是“未使用”)。这是一个警告,而不是一个错误。您可以在某处使用
count
的值,当您递增
count
时,您没有get、显示器或
(如果
),请使用public int count=0;用于系统输出count@SamDeveloper,我们可以从公共方法访问私有变量。是否需要显式添加公共?如果nt要打印,那么var必须是公共的。。在我添加了
System.out.println(count);
警告消失了,谢谢。
System.out.println(count);