Java 编译代码时找不到符号
我有一些Java代码:Java 编译代码时找不到符号,java,Java,我有一些Java代码: public class Car { private int yearModel; private String make; private int speed; public Car(int newYearModel, String newMake) { yearModel = newYearModel; make = newMake; speed = 0; }
public class Car
{
private int yearModel;
private String make;
private int speed;
public Car(int newYearModel, String newMake)
{
yearModel = newYearModel;
make = newMake;
speed = 0;
}
public int getSpeed()
{
return speed;
}
public void accelerate()
{
speed += 5;
}
}
我试图编译并运行此特定程序,但出现以下错误:
CarClient.java:16: error: cannot find symbol
myCar.accelerateSpeed(speed);
^
symbol: variable speed
location: class CarClient
错误:找不到符号是什么意思?我看不到名为“breakSpeed”或“accelerateSpeed”的方法;编译器同意我的观点
我想你的意思是“刹车”和“加速”。我看不到任何一种叫“制动速度”或“加速速度”的方法;编译器同意我的观点
我想你的意思是“刹车”和“加速”。你调用的是加速速度(speed)
,但你实现的唯一方法是加速()
,它不带任何参数。类似地,您试图调用brakeSpeed(speed)
,但只实现了brake()
,没有参数。要么实现您试图调用的函数,要么更改您已经实现的函数的名称 您正在调用accelerateSpeed(speed)
,但您实现的唯一方法是accelerate()
,它不接受任何参数。类似地,您试图调用brakeSpeed(speed)
,但只实现了brake()
,没有参数。要么实现您试图调用的函数,要么更改您已经实现的函数的名称 您在Car
类中的accelerate()
声明不接受参数-但是您在main()
中调用了accelerateSpeed(speed)
您在Car
类中的accelerate()
声明不接受参数-但是您调用了accelerateSpeed(speed)
在main()
中是的,所以我将更改brakespeed和acceleratespeed,分别为简单的制动和加速,因为我希望我的客户端类分别调用我的制动和加速服务类。是的,所以我将更改brakespeed和acceleratespeed,分别为简单的制动和加速,因为我希望我的客户机类分别调用我的服务类brake和accelerate。因此,在这方面,只需从accelerate和brake参数中删除速度,然后即可正确运行程序。在代码中,当调用accelerateSpeed(speed)
时,将其更改为justaccelerate()
无需参考速度
。brakeSpeed(speed)
和brake()
我在程序中遗漏了要添加的一个小部分,我希望我的程序在速度上加倍或减慢,在一秒钟内更新它。很抱歉,没有将其添加到中,这本应是帮助清除它的一部分。添加了我先前缺少的部分,对于错误,很抱歉。因此,在这方面,只需从加速和制动参数中删除速度,然后才能正确运行程序。在您的代码中,当您调用加速速度(speed)
,将其更改为justaccelerate()
,不参考speed
。brakeSpeed(speed)
和brake()
我在程序中遗漏了要添加的一个小部分,我希望我的程序在速度上加倍或减慢,在一秒钟内更新它。很抱歉,没有将其添加到中,这应该是帮助清除它的一部分。添加了我先前缺少的部分,对错误表示抱歉。这意味着您没有定义方法,或者您没有定义变量。解决方案是定义方法accelerateSpeed(…)
,或者定义要传递给它的变量speed
。这意味着没有定义方法,或者没有定义变量。解决方案是定义方法accelerateSpeed(…)
,或者定义要传递给它的变量speed
。