java新手:获得意外输出

java新手:获得意外输出,java,Java,我已经创建了2个java文件。 1. helloWorld.java 2.在文件夹p/node.java中 package p; public class node { public static char val; public boolean busy = true; public node(char val) { this.val=val; } } helloWorld.java文件夹包含主函数 import p.node;

我已经创建了2个java文件。
1. helloWorld.java 2.在文件夹p/node.java中

package p;
public class node {
    public static char val;

    public boolean busy = true;


    public  node(char val)
   {
       this.val=val;
   }
}
helloWorld.java文件夹包含主函数

import p.node;  
import java.util.ArrayList;  
import java.util.List;  
public class helloWorld {
    public static void main(String[] args) {
        List<node> list = new ArrayList<node>(); //created list of object node
        list.add(new node('a'));
        list.add(new node('b'));
        list.add(new node('c'));
        list.add(new node('g'));
        list.add(new node('k'));
        list.add(new node('o'));

        System.out.println(list.get(2).val);
    }
}
预期输出c
实际输出o

请帮帮我,我是java新手。。。提前谢谢

您已将
val
声明为
static
并且
static
成员仅创建一次

节点
类中删除
静态
声明

package p;
public class node {
    public char val;
    public boolean busy = true;

    public  node(char val) {
       this.val=val;
   }
}

您已将
val
声明为
static
并且
static
成员仅创建一次

节点
类中删除
静态
声明

package p;
public class node {
    public char val;
    public boolean busy = true;

    public  node(char val) {
       this.val=val;
   }
}
删除类节点第3行中的单词static,然后它就可以工作了

致意 Andree

删除类节点第3行中的单词static,然后它就可以工作了

致意
安德烈

val
中删除
静态
。这使得一个
val
,而不考虑
节点的数量。非常感谢@ElliottFrisch,它可以工作!!从
val
中删除
static
。这使得一个
val
,而不考虑
节点的数量。非常感谢@ElliottFrisch,它可以工作!!