[求助]帮看哪里出问题??
请编写aplication,它由两个类定义组成:类A中定义了int型变量i和float型变量x,及一个带两个参数的构造函数(为变量i和x做初始化)。主类B中创建了一个A类的对象a(i的初始值2,x的初始值8.0),还定义了一个方法b,b的参数和返回值均为A类的对象,功能为将参数对象的属性i加1,属性x加2。在主类B中调用b(a)后的结果。
class A { static int i; static float x; public A(int i,float x) { this.i=i; this.x=x; } } class B { static A a=new A(2,8.0f); public static A b(A a) { a.i+=1; a.x+=2.0; return a; } public static void main(String[] args) { System.out.println(b(a)); } }
搜索更多相关的解决方案:
public
----------------解决方案--------------------------------------------------------
A里的两个变量i,X没有必要定义为static。其他似乎没错
----------------解决方案--------------------------------------------------------
System.out.println(b(a));
这句是不是有错.因为输出的值不对...
----------------解决方案--------------------------------------------------------
都TMD能输出怎么会有错?你说的逻辑错误那我就不知道了,天知道你要的逻辑是什么,我只是说语法错误。上面的句子应该输出a所指向的内存地址。类似ae345f之类的
----------------解决方案--------------------------------------------------------
正确的程序应该如下:
class A
{
static int i;
static float x;
public A(int i,float x)
{
this.i=i;
this.x=x;
}//A
}//class A
class B
{
static A a=new A(2,8.0f);
public static A b(A a)
{
a.i+=1;
a.x+=2.0;
return a;
}
public static void main(String[] args){
System.out.println("i="+b(a).i+" "+"x="+b(a).x);
}//main
}//class B
----------------解决方案--------------------------------------------------------