Types ';无效';此处不允许键入java多类
我想使用public方法public setZA()设置类X的私有变量A 属于Z类 我只是陷入了这个问题。 不知道如何设置值并获取它Types ';无效';此处不允许键入java多类,types,void,Types,Void,我想使用public方法public setZA()设置类X的私有变量A 属于Z类 我只是陷入了这个问题。 不知道如何设置值并获取它 错误:此处不允许使用'void'类型完整错误是什么?Start.java:6:错误:此处不允许使用'void'类型z1.setZA(z1.getZA().setA(11))^setA返回一个Void类型,然后您试图将该Void传递到setZA。不过我不能推荐一个修复方案,因为我不完全确定您在那里尝试做什么。非常感谢您,先生。我将试图解释,X类的A是私有的。我在类Z
错误:此处不允许使用'void'类型完整错误是什么?Start.java:6:错误:此处不允许使用'void'类型z1.setZA(z1.getZA().setA(11))^
setA
返回一个Void类型,然后您试图将该Void传递到setZA
。不过我不能推荐一个修复方案,因为我不完全确定您在那里尝试做什么。非常感谢您,先生。我将试图解释,X类的A是私有的。我在类Z中有一个名为a的类X的成员。我试图使用类Z的setZA()函数设置(a.a)的值。我是不是把它弄得太复杂了?你为什么还要调用setZA
z1.getZA().setA(11)
已经完成了您描述的上一条注释。这是一种不好的做法,违背了将a
私有化的目的,但它会起作用。
class X
{
private int A;
private int B;
public void setA(int A)
{this.A=A;}
public void setB(int B)
{this.B=B;}
public int getA( )
{return this.A;}
public int getB( )
{return this.B;}
}
class Z
{
private X a;
private X b;
public void setZA(X a)
{this.a=b;}
public void setZB(X a)
{this.b=b;}
public X getZA()
{return this.a;}
public X getZB( )
{return this.b;}
}
public class Start{
public static void main(String args[])
{
Z z1= new Z();
z1.setZA(z1.getZA().setA(11));
}
}