Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/sorting/2.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_Sorting - Fatal编程技术网

Java 无法从静态上下文引用非静态方法,测试排序方法

Java 无法从静态上下文引用非静态方法,测试排序方法,java,sorting,Java,Sorting,可能重复: 我发现非静态方法不能从静态上下文中引用,我忘记了如何克服这个问题,因为我使用java已经有一段时间了 我需要创建排序方法并在同一个文件中测试它。使排序成为静态方法 public static int[] Sort(int[] input) ... 使Sort成为静态方法 public static int[] Sort(int[] input) ... 选项1:使排序函数为静态 公共静态int[]排序(int[]输入) 选项2:创建类的实例 public static voi

可能重复:

我发现非静态方法不能从静态上下文中引用,我忘记了如何克服这个问题,因为我使用java已经有一段时间了


我需要创建排序方法并在同一个文件中测试它。

使
排序成为静态方法

public static int[] Sort(int[] input)
...

使
Sort
成为静态方法

public static int[] Sort(int[] input)
...

选项1:使排序函数为静态

公共静态int[]排序(int[]输入)

选项2:创建类的实例

 public static void main(String[] args)
 {
 Sorting s  = new Sorting();
 System.out.println(Arrays.toString(s.Sort(array to be sorted)));
 }

选项1:使排序函数为静态

公共静态int[]排序(int[]输入)

选项2:创建类的实例

 public static void main(String[] args)
 {
 Sorting s  = new Sorting();
 System.out.println(Arrays.toString(s.Sort(array to be sorted)));
 }

+1:但是,如果
排序
方法不需要访问成员变量,则更合理的做法是简单地将其设置为
静态
。因为排序算法是递归的,它会调用它自己。我不明白为什么你要创建一个只有静态方法的类的对象。。类本身不应该是静态的,您可以将该函数称为Sorting。Sort(array)+1:但是,如果
Sort
方法不需要访问成员变量,则只需将其设置为
静态即可。因为排序算法是递归的,它会自己调用我不明白为什么你要创建一个只有静态方法的类的对象。。类本身不应该是静态的,并且调用函数Sorting.Sort(array)