Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/401.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 是否存在存储与任何类不特别相关的方法的约定?[爪哇]_Java_Class_Methods - Fatal编程技术网

Java 是否存在存储与任何类不特别相关的方法的约定?[爪哇]

Java 是否存在存储与任何类不特别相关的方法的约定?[爪哇],java,class,methods,Java,Class,Methods,我目前正在学习Java,在做一个项目时,我创建了一些方法,这些方法在逻辑上不适合任何给定的类,但在整个项目环境中都很有用 我所拥有的最好的例子是一种方法,它将camelCase世界分割成如下: 拆分骆驼盒->拆分骆驼盒。 我曾想过创建一个名为Toolbox的新抽象类并将这些方法存储在那里,但我想知道关于这个主题是否有任何约定或最佳实践。您可以创建您的Toolbox类,然后将其声明为包。之后,您可以在要使用工具箱中的方法的类的开头导入工具箱。当将方法放在现有类中没有意义时,将实用程序类通常命名为S

我目前正在学习Java,在做一个项目时,我创建了一些方法,这些方法在逻辑上不适合任何给定的类,但在整个项目环境中都很有用

我所拥有的最好的例子是一种方法,它将camelCase世界分割成如下:

拆分骆驼盒->拆分骆驼盒。
我曾想过创建一个名为Toolbox的新抽象类并将这些方法存储在那里,但我想知道关于这个主题是否有任何约定或最佳实践。

您可以创建您的Toolbox类,然后将其声明为包。之后,您可以在要使用工具箱中的方法的类的开头导入工具箱。

当将方法放在现有类中没有意义时,将实用程序类通常命名为SomethingUtils并不少见

它本身并没有什么问题,但如果您发现自己有很多方法或实用程序类,那么您的设计可能会有点偏差,并且您的编程方式比面向对象的方式更程序化


正如在注释中提到的,您并没有将其设置为抽象类。它是一个充满了静态方法的类,完全根据传递给它们的参数工作。

正如kayaman sir所说,如果你有太多的实用类和方法,这意味着你的代码更程序化,而不是面向对象

如果你仍然想要一个仅仅用来提供一些实用程序的类,那么你可以在java中有这样一个类,只需要在其中放一些静态方法

此类类的最佳示例之一是java.lang.Math

例如,下面的代码将起作用

class MyUtilityClass
{

private MyUtilityClass()
{
// no object creation will be allowed
}

// make as many static methods you want 


}

为什么要使用抽象类?你可以简单地创建一个类工具箱,并将你的方法存储为静态方法在我的推理中,该类只是用于存储在其他类中使用的方法,而不是创建任何新的InstanceNoAbstract类-这是一个坏主意,因为它说它是为扩展而创建的,但它不是。因此,好主意是创建一个包含许多公共静态变量的最终实用程序类methods@juanfran静态方法是您正在寻找的方法,正如您在java.lang.Math classIn中看到的那样。为了扩展其util字符,您可以将类设置为final,并将其构造函数设置为私有。这将强制该类的任何用户只使用现有的静态方法。当然,这样做是完全可以选择的。