class B{ int x=100,y=200; public void setx(int x){ x=x; } public void sety(int y){ this.y=y; } public int getxYsum(){ return x+y; } } public class A{ public static void main (String args[]){ B b=new B(); b.setx(-100); b.sety(-200); System.out.printin( "sum="+b.getXYSum()); } }
时间: 2024-02-24 17:00:15 浏览: 115
Class-Position.zip_Windows编程_Java_
这段代码存在一个错误,即在类B中的setx方法中,使用了与该方法参数同名的变量x,导致在方法内部无法正确修改类成员变量x的值。正确的setx方法应该像这样:
```
public void setx(int newX){
x = newX;
}
```
这样,在调用`b.setx(-100)`时,类成员变量x的值会被正确修改为-100,最终输出的sum应该为-300。
阅读全文