楼主, java入门看这里: https://www.runoob.com/java/java-tutorial.html
public class Test { //类成员只能是方法,变量,子类等,不能做相关操作. int a=1; public void test01() { //操作变量只能在方法里处理. a=2; } public static void main(String[] args) { } }
首先为什么报错,上面有个大哥说的是对的,类体里是只允许定义类的,你写了int a=1; a=2;编译器认为你是在定义两个变量,但是中间却用了分号,应该是用逗号,int a=1, a=2; 这样的话就会提示a已经定义了。至于为什么类体中只允许变量的初始化,java不就是面向对象的么,一个对象只有两种东西,要么是属性,要么是方法,你把方法中的东西抽出来去当做属性,但是又不符合属性的定义规则,当然不被允许,而且如果类体中可以随便写逻辑,那还要方法干嘛
int a = 1;表是在定义a的同时对它进行初始化 a=2;则是一条对a的赋值语句,它要放在类的成员方法中,但是你的集成开发环境可能认为是要定义另一个变量,但是却使用了;所以就报了“;”处的错误,
引用 3 楼 kubichengxuyuanz 的回复:赋值应该写在方法里为什么全局变量的赋值一定要放到方法里?
赋值应该写在方法里
51,397
社区成员
85,846
社区内容
加载中
试试用AI创作助手写篇文章吧