【问题标题】:Fix Cannot find symbol in Java [duplicate]修复在 Java 中找不到符号 [重复]
【发布时间】:2015-01-17 09:46:32
【问题描述】:

如何修复“找不到符号”错误? 我昨天已经开始学习 Java 教程了:

class BicycleDemo {
public static void main(String[] args) {

    // Create two different 
    // Bicycle objects
    Bicycle bike1 = new Bicycle();
    Bicycle bike2 = new Bicycle();

    // Invoke methods on 
    // those objects
    bike1.changeCadence(50);
    bike1.speedUp(10);
    bike1.changeGear(2);
    bike1.printStates();

    bike2.changeCadence(50);
    bike2.speedUp(10);
    bike2.changeGear(2);
    bike2.changeCadence(40);
    bike2.speedUp(10);
    bike2.changeGear(3);
    bike2.printStates();
}
}

在第一行,它说“不正确的包”(这很奇怪,因为包是教程的下一章) 在第 6 行和第 7 行(自行车 1 和 2),它显示“找不到符号”。

还有这个:

class Bicycle {

int cadence = 0;
int speed = 0;
int gear = 1;

void changeCadence(int newValue) {
     cadence = newValue;
}

void changeGear(int newValue) {
     gear = newValue;
}

void speedUp(int increment) {
     speed = speed + increment;   
}

void applyBrakes(int decrement) {
     speed = speed - decrement;
}

void printStates() {
     System.out.println("cadence:" +
         cadence + " speed:" + 
         speed + " gear:" + gear);
}
}

但我不知道如何让它们一起工作,如果他们应该这样做的话。 这些事情可能真的很容易解决,但显然,我对此几乎一无所知。

【问题讨论】:

  • 您是否在BicycleDemo 类中导入了Bicycle 类?
  • 你是如何尝试运行编译器的?
  • 如果它说“不正确的包”,这意味着您的类package 声明与.java 文件位置不匹配。在您的情况下,您没有 package 声明,因此您的类位于 default 包中。这意味着文件应该在类路径的根目录下。
  • @PradeepSimha 我试过了,但没有正常工作......
  • @PatriciaShanahan 只需构建然后运行:S

标签: java symbols


【解决方案1】:
  1. 将所有文件保存在某个位置
  2. 删除所有包或创建一个新项目
  3. 根据需要创建新包
  4. 首先创建Bicycle
  5. 然后通过粘贴 Bicycle 类名来创建您的其他类
  6. 然后它会更新你的imports当前

是的,我知道这是一团糟,但有时这是最好的选择

【讨论】:

  • 谢谢你的帮助,我今晚试试。
  • 是的,我已经删除了整个项目,创建了Bicycle,然后在相同的包名下制作了BicycleDemo,虽然在不同的类中,运行它,输出是正确的!我认为问题只是我一直忘记声明包。
  • 好的,您可以通过我的私人网站与我联系,如果您愿意,我会通过远程指导您
猜你喜欢
  • 2012-09-09
  • 2015-12-15
  • 1970-01-01
  • 1970-01-01
  • 2014-03-14
  • 2012-10-31
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多