【问题标题】:IntelliJ cannot find find a symbol from a class in the same project [duplicate]IntelliJ 无法从同一项目中的类中找到符号 [重复]
【发布时间】:2017-12-02 08:07:59
【问题描述】:

骰子课

package com.company;

import java.util.Random;

public class Die
{
     private int sides;
     private int result;
     public int roll()
{
    Random randint = new Random();
    return randint.nextInt(sides) + 1;

}
public int getSides()
{
    return sides;
}
public void setSides(int num_sides)
{
    sides = num_sides;

}
/**
 @param d Name of Dice
 */
public static void rollDie(Die d)
{
    System.out.println(d.roll());
}

}

游戏类

package com.company;
import javax.swing.JOptionPane;


public class Game
{
public String dealerRoll()
{
  JOptionPane.showMessageDialog(null, "I will roll the dice now.");
  String choice = JOptionPane.showInputDialog("Even or odd?");
  return choice;
}
}

主类

package com.company;

public class Main {

public static void main(String[] args)
{
    Die Dice = new Die();
    dealerRoll();


}
}

IntelliJ 正在识别主类中的 Die,但不识别 DealerRoll。有人可以告诉我我做错了什么吗?我是 StackOverFlow 的新手,对混乱的格式感到抱歉。我刚刚学习了java类,但它有时有效,有时有效。所以请告诉我游戏类和骰子类有什么问题

【问题讨论】:

  • 欢迎来到 Stack Overflow!在尝试提出更多问题之前,请阅读How do I ask a good question?。每次您发布忽略惯用样式指南的格式错误的代码时,一只小猫就会死去。

标签: java intellij-idea


【解决方案1】:

dealerRoll 在 Game 中,因此您需要一个对游戏对象的引用,如下所示:

Game game = new Game();
game.dealerRoll();

另外,请注意以大写字母开头的变量名是不好的做法(只有类以大写字母开头),所以请将Die Dice 重命名为Die diceDie die

【讨论】:

  • 谢谢,我会使用你建议的变量名。这有帮助
猜你喜欢
  • 2021-12-04
  • 2013-09-14
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多