Java “上的语法错误”;“x”;,在此之后应为VariableDeclaratorld
您好,我正在尝试向代码中添加一个类/对象,但它不起作用。这是迄今为止我所拥有的类,但当我从该类实例化一个对象(ranx1),然后尝试更改其中的一个变量(x)时,它表示存在错误。有什么我需要改变的吗?我真的很感激任何帮助 由于我实例化了该类中的一个对象,我将如何更改新对象的变量?例如,如果在类x=0中,那么我制作了一个副本,这次我希望x=100,但所有其他变量(如Tcol和fc)保持不变。我知道这是可能的,因为我的老师教过它,但它现在对我不起作用Java “上的语法错误”;“x”;,在此之后应为VariableDeclaratorld,java,class,object,processing,Java,Class,Object,Processing,您好,我正在尝试向代码中添加一个类/对象,但它不起作用。这是迄今为止我所拥有的类,但当我从该类实例化一个对象(ranx1),然后尝试更改其中的一个变量(x)时,它表示存在错误。有什么我需要改变的吗?我真的很感激任何帮助 由于我实例化了该类中的一个对象,我将如何更改新对象的变量?例如,如果在类x=0中,那么我制作了一个副本,这次我希望x=100,但所有其他变量(如Tcol和fc)保持不变。我知道这是可能的,因为我的老师教过它,但它现在对我不起作用 class anyName { int Tco
class anyName
{
int Tcol = 0;
int fc = 0;
int x = 0;
float randx = (random(1, 1000));
float randy = (random (0, 600));
int Tsizes = 1;
{
if (fc >= x) { //Random Ellipse 3
stroke (Tcol);
fill (Tcol);
ellipse (randx, randy, Tsizes, Tsizes);
}
}
}
anyName ranx1 = new anyName();
ranx1.x = 100;
如果您试图从不在同一个包中的类访问变量,则需要将变量声明为“public”。我猜您的问题是,您试图从另一个包中的类访问该属性,您应该将atributes声明为public以获得对它们的访问权。但是这个解决方案并不完全正确,更好的方法是将它们声明为私有,并创建公共getter和setter来访问/修改它们
说,您应该发布一个工作示例,该段代码不会编译,因为您试图执行任何类之外的代码。。。我不知道你想用
if
子句前面的大括号做什么。当你处理一个类时,每个成员都有一个控件访问权限
当您不声明控件访问权限时,如:
ranx1.x = 100;
他们都得到了默认的隐私
您不能从类外访问私有成员
做:
不管是谁,我必须指出,大多数时候不建议将成员访问权限设置为公共的,您应该了解getter和setter
现在,我希望您的代码的其余部分位于一个主函数和一个主类中,但如果不是这样,它应该是这样的:
class anyName
{
public int Tcol = 0;
public int fc = 0;
public int x = 0;
public float randx = (random(1, 1000));
public float randy = (random (0, 600));
public int Tsizes = 1;
{
if (fc >= x) { //Random Ellipse 3
stroke (Tcol);
fill (Tcol);
ellipse (randx, randy, Tsizes, Tsizes);
}
}
}
首先,您不能像那样访问子类veriables。如果你想访问,你应该这样做
public class Main
{
public static void main(String[]args){
anyName ranx1 = new anyName();
ranx1.x = 100;
}
}
或者,您可以在类内使用它们,方法是
public class ExampleApp {
class anyName
{
int x = 0;
}
public static void main(String[]args){
ExampleApp ea = new ExampleApp();
ExampleApp.anyName ranx1= ea.new anyName();
ranx1.x =100;
}
}
如果要访问veriables private,则不能使用它们。其次,如果要使用此库,则不能使用innerclass。在innerclass内部,您无法访问库,因为java在不同的包中看到它。如果您将其设置为公共类并导入数学,您可以使用它,否则您应该为椭圆创建随机方法。您认为何时执行
If
?技术上是正确的,但这是对新手的反建议-在真实代码中不应该有公共类变量!这是错误的,有一个默认访问,它不是私有的、受保护的或公共的。实际上离受保护的很近。什么?默认为会员专用!不,有一个包私有级别,成员可以在同一个包中访问,但不适用于儿童课程:你能给我你的电子邮件吗?我想发电子邮件给你,我需要帮助,因为它不起作用。你可以在这里提问,所以是提出问题的正确地方
public class ExampleApp {
class anyName
{
int x = 0;
}
public static void main(String[]args){
ExampleApp ea = new ExampleApp();
ExampleApp.anyName ranx1= ea.new anyName();
ranx1.x =100;
}
}
public void method() {
anyName ea = new anyName();
ea.x=100;
}