中易网

一个入门级的java代码问题

答案:3  悬赏:70  
解决时间 2021-02-18 02:31
public class HighScore{ private static String name; private static int score; HighScore(String n, int s){...} //略 public static void setScore(int s){...} //略 public static int getScore(){...} //略 public static void setName(String n){ name = n; } public static String getName(){ return name; } } ------------------------------------------------------------------ import java.util.Scanner; public class HighScoresProgram { public static void main(String args[]){ HighScore[] list = new HighScore[5]; initialize(list); } public static void initialize(HighScore[] list){ Scanner input = new Scanner(System.in); System.out.print("Enter the name for score #"+ 1 +": "); list[0].setName(input.nextLine());//第一次输入aaa System.out.println(list[0].getName());// list[0]显示aaa System.out.print("Enter the name for score #"+ 2 +": "); list[1].setName(input.nextLine());//第二次输入bbb System.out.println(list[0].getName());// list[0]显示bbb } //其余略 } ------------------------------------------------------------------------------ 以上是一个类和一个测试代码。 测试代码的时候我第一次输入给list[0]的name设置了aaa,下面的list[0]显示aaa没错, 但是第二次我给list[1]的name设置了bbb,再回头查看list[0]的时候list[0]也变成了bbb了, 求解各路大神赐教感激不尽~~~!
最佳答案
private static String name;
     private static int score;static 去掉 ,static修饰的成员变量会变成静态变量,归属于类而非对象本身.
你输一个ccc,他还会显示ccc,静态变量只有一份,保存在方法区,所有对象共享一个,
也就是list里面的所有HighScore共享一个name,那个name就是你最后一次修改的,
每一次修改都会覆盖原有的值.类似于 
    int a=1;
    a=2;
    System.out.println(a);
全部回答
你这static是类变量啊,全部类共享一个类变量,不能用static 改的话 第一 HighScore里的static全去掉 第二 HighScore[] list = new HighScore[5]; initialize(list);//你这个是怎么初始化的,必须对每个引用new 一个HighScore,不然会报错
HighScore[] list = new HighScore[5]; 数组李每个对象都要初始化 for(int i = 0; i < list.length; i++) list[i] = new new HighScore();
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
开微商城有什么步骤要做的,要怎么去营销
对联:有一种心痛,叫爱不能语。
我的iphones激活不了怎么办?
女孩叫男孩 帅妞 或者 小鲜肉 是什么意思??
品冠之家在什么地方啊,我要过去处理事情
คิดถึง哪国文字
智龙迷城X最新oped谁知道叫什么名字?不知道
什么电影里有疾风这个名字? 是动作片 国外的
我想皈依佛门、要怎样做?
为什么感觉自己变得一个喜新厌旧的人物
麻烦给我翻译几个挂牌:
I feel you in ma soul,i'll take u hom
罪恶王冠有第2季吗
听说帕芙欧脚汗光挺好用的,请问哪里有卖?
电子地图是无极缩放的,为什么还有1:多少多
推荐资讯
角的两边张口越大,角越大对吗
英特尔双核P4500和i3比较差多少?
快递显示到达我这儿的分拨中心进行卸车扫描了
我在大型超市买了一瓶大的阿萨姆奶茶,第一天
大连艺术学院专科的雕塑专业怎么样?能换个专
清洗cmos到佳能售后多少钱
x除以一点五等于五点吧,根据方程编写应用题
pspice模拟电路中,怎样利用电流探头测交流电
在steam买的幽灵行动因为uplay打折退款了,又
13+()小于17怎么算方法
世界跨纬度最广、东西距离最长的一个洲是
我洗米就想吃生米怎么办
手机登qq时,显示手机磁盘不足,清理后重新登
刺客的套装怎么选啊?