在这种情况下 static 和 void 的目的是什么:
public static <T> void sort (List<T> list, Comparator<? super T> c){}
在这种情况下 static 和 void 的目的是什么:
public static <T> void sort (List<T> list, Comparator<? super T> c){}
这是一个可以在任何列表上调用的方法,作为参数传递。不需要返回值。它由完全由静态方法组成的 Collections 类提供。
static
: 该方法可以在不需要调用它的 Collections 类的实例的情况下被调用。
void
: 该方法不返回任何内容。
这些是完全不同的东西。
void
方法是一个不返回任何东西的方法。其他语言(如古老的 Fortran 或 Pascal)对此类模块有不同的关键字。在 Fortran 中,不返回任何内容的模块被调用subroutine
,而返回值的模块被调用function
。在 Pascal 中,它们被称为procedure
and function
。
在 C 编程语言和其他继承其语法的语言中,没有不同的关键字,但是void
引入了“虚拟”返回类型。
static
方法表示属于整个类的方法。您可以通过指定类名来调用它,而无需创建类的对象(实例)。静态方法对于实现实用程序(例如Math
JDK 类)很有用。