0

我正在做一个项目,我需要将扫描仪从静态主方法传递到扫描仪读取的文本文件中的非静态方法,并让它返回一个浮点数。到目前为止,我有:

public class Calculator extends Stack{
public static void main (String []args) {
    Scanner s = new Scanner(System.in);
    try
    {
        s = new Scanner(new FileInputStream("numbers.txt"));
        float z = calculate (s);

    } 

然后在我的计算方法中,它的声明就是public float calculate(Scanner s){我知道类似的问题已经被问过很多次,但我就是不明白。让我失望的是没有像节点一样创建新对象。谢谢你。

4

1 回答 1

3

您需要创建该类的一个实例。由于 calculate() 方法是非静态的,因此您需要在类的实例上调用它。

public class Calculator extends Stack{
public static void main (String []args) {
    Scanner s = new Scanner(System.in);
    Calculator c = new Calculator();
    try
    {
        s = new Scanner(new FileInputStream("numbers.txt"));
        float z = c.calculate (s);

    } 
于 2013-03-12T06:09:27.060 回答