为什么这段java代码会出错?很简单的问题,好像是内存什么关系的??

2025-06-20 09:23:26
推荐回答(3个)
回答1:

首先,java必须要使用import导入相关的类,这个类似C语言的头文件。
其次,你的java代码没有类的概念和基本成员函数概念
最好,切勿使用与java类库中已经存在的类的名称,比如array这个单词就最好不要用

我帮你完善的代码:(Eclipse+JDK1.7环境)[文件:lei.java--->类名与文件名相同哟]

import java.io.*;
public class lei { //类lei的声明

String [] ss; //类lei的成员变量ss

int i; //类lei的成员变量i

void set_i() //类lei的成员函数set_i

{
i=2;
}
void set_ss() //类lei的的成员函数set_ss

{
//ss是数组,赋值方式很特殊,不是简单的String方式直接赋值
ss = new String[]{"ww","ee","rr"};
}

public static void main(String args[])
{
lei L=new lei(); //创建类的对象L

L.i=3; //对象L的变量i初次赋值为3

System.out.println(L.i); //标准输出对象L的变量i,注意格式:L.i(而不是i)

L.set_i(); //调用对象L的成员函数set_i修改成员变量i的值

System.out.println(L.i); //再次输出对象L的成员变量i的值(值被函数修改了)

L.ss = new String[]{"ww","ee","rr"}; //对象L的成员变量ss初次赋值[注意赋值方法]

for(int j=1;j<=L.ss.length;j++) //循环语句输出数组的方式

{
System.out.println(L.ss[j-1]);
}
L.set_ss(); //调用对象L的成员函数set_ss修改ss的值

for(int j=1;j<=L.ss.length;j++)//再次输出对象L的成员变量ss的值
{
System.out.println(L.ss[j-1]);
}
}
}

回答2:

public static void main(String[] args) {
String [] ss = {"ss","ss","ss"} ;
ss = new String[]{"ww","ee","rr"};
int i =2 ;
i = 3 ;
}
这么写

回答3:

ss = {"ww","ee","rr"};

i = 3 ;

这两句是语句,必须存在于方法内部,这是规定
你把 拿两个赋值的放在{}里面也可以的。