Java 在多个类中使用相同的函数

Java 在多个类中使用相同的函数,java,function,Java,Function,我想在多个类中使用一些函数,正确的方法是什么 我想创建一个类并将我的函数设置为静态。。。或者实现这个类谁需要这些函数 你觉得怎么样 感谢如果此方法不使用任何对象的任何实例变量,它确实可以(而且可能应该)成为静态的,这使得它可以从任何地方使用(前提是它也是公共的) 此类无状态、全局可用方法的好例子是类中的方法。这取决于函数的行为。在某些情况下,将函数放入单独的类中并使其保持静态就足够了。但如果需要修改其行为,则应该考虑使其不静态,以便允许在子类中重写它。 < P>典型地,在静态实用程序类中实现与类

我想在多个类中使用一些函数,正确的方法是什么

我想创建一个类并将我的函数设置为静态。。。或者实现这个类谁需要这些函数

你觉得怎么样


感谢

如果此方法不使用任何对象的任何实例变量,它确实可以(而且可能应该)成为静态的,这使得它可以从任何地方使用(前提是它也是公共的)


此类无状态、全局可用方法的好例子是类中的方法。

这取决于函数的行为。在某些情况下,将函数放入单独的类中并使其保持静态就足够了。但如果需要修改其行为,则应该考虑使其不静态,以便允许在子类中重写它。

< P>典型地,在静态实用程序类中实现与类实例无关的共享功能,这与java实现./P>中所有集合所共有的功能相同。 如果功能依赖于实例,那么可以通过将实现放在基类(通常是抽象基类)中,并在需要相关功能的两个类中继承来共享功能


最后,可以在包私有实用程序类中实现共享功能,将公共方法添加到调用该包私有实用程序类的两个类中以实现该功能。

这通常通过使用包含静态方法的实用程序类来实现:

class MyCompanyUtils
{
    public static encloseInQuotes(String s)
    {
      /* code to wrap s in quotes */
    }

    public static removeTrailingSlash(String s)
    {
      /* code to remove trailing slash from a string */
    }
}

请详细说明,“在多个类中使用”是什么意思?这些方法是否需要有关实例的一些信息?或者,它们只是程序中常见的计算,并通过参数获得所需的一切?这些方法会改变程序的状态吗?这个“函数”(在Java中称为方法)会怎么样?它会做什么?它更像是一种无状态的实用程序方法,比如可以在数学类中找到的方法吗?或者它有一个可以改变的状态吗?对不起,我在讲数学课上讲的方法。