如何在几个java类中使用相同的函数?

时间:2011-07-03 15:27:03

标签: java

我无法理解如何在几个java类中使用相同的函数。例如,我有以下功能:

public int plus(int one, int two) {
  return one + two;
}

如何在其他几个文件(类)中使用它? 我应该在单独的课程中创建吗?

6 个答案:

答案 0 :(得分:5)

如果将函数放入类中并将其声明为静态

class MathFunctions {
  public static int plus(int one, int two) {
    return one + two;
  }
}

您可以像这样访问它:

Mathfunctions.plus(1, 2);

如果你有一个非静态方法,你必须总是通过引用你声明该方法的类的实际对象来调用它。

答案 1 :(得分:3)

您可以创建像

这样的Utility类
public enum Maths {;
    public static int plus(int one, int two) {
        return one + two;
    }
}

答案 2 :(得分:2)

如果实现总是相同(一个+两个),你可以改为静态方法,如下所示:

class Util{
    public static int plus(int one, int two) {
        return one + two;
    }
}

然后你可以调用像

这样的函数
int result = Util.plus(1,1)

答案 3 :(得分:0)

您应该创建一个类并将该函数添加到该类中。然后在另一个类中调用该函数,例如包含main方法的Test类。

public class Util{
   public static int plus(int one, int two) {
     return one + two;
   }
}

class Test {
    public static void main(String args[])
    {
       System.out.println(Util.plus(4,2));
    }
}  

答案 4 :(得分:0)

您创建的此功能必须位于类中。如果你去你的另一个类(在同一个包中)创建这个类的实例ex:假设你有这个

public class Blah {
  public int plus (int one, int two) {
    return one + two;
  }
}

然后你有了你想要使用等级的课程:

public class otherclass {
  public void otherfunc{
    int yo,ye,yu;
    Blah instanceOfBlah = new Blah ();
    yu = instanceOfBlah.plus(yo,ye);
  }
}

您可以在任何其他类中使用此方式来访问加号函数。如果那些其他类属于不同的包,则可能必须导入blah类。

答案 5 :(得分:0)

或者你可以这样做:

class Test
{
    public int plus(int one, int two)
    {
        return one + two;
    }
} 

然后使用它:

int i = new Test().plus(1,2);