怎么样把代码中的setOrder方法作用在TestArray类中创建的数组上呢?

JAVA萌新一枚,写了一个代码用作数组的构建和排序。数组是在TestArray类中被创建的,在ArraySort程序中另外创建了一个函数serOrder用于排序,但是发现这个setOrder不能排序,怎么输出就怎么输出的,求解,谢谢大佬们!
import java.util.Arrays;
public class ArraySort{
public int[] sim=new int [10];
public void setOrder(int sim[]) {
for(int a=0;a<sim.length-1;a++)
{
for(int b=0;b<sim.length-a-1;b++)
{

      if (sim[b]>this.sim[b+1])
      {
          int temp=sim[b];
          sim[b]=sim[b+1];
          sim[b+1]=temp;
      }

}

}

}

public void setArray(int i)
{   for(int j=0;j<sim.length;j++)
{
    this.sim[j]=i;
    --i;

}

}
public static void main(String Args[]) {
    ArraySort array=new ArraySort();
    array.setArray(10);
    System.out.println("初始化数组的结果:");
    System.out.println(Arrays.toString(array.sim));
    System.out.println();
    array.setOrder(array.sim);
    System.out.println("排序后的结果:");
    System.out.println(Arrays.toString(array.sim));
    System.out.println();
    System.out.println();
    TestArray array2=new TestArray();
    array2.creatArray();
    System.out.println("排序后的结果:");
    array2.setOrder(array2.ar);
    System.out.println(Arrays.toString(array2.ar));

}
}

import java.util.Scanner;
public class TestArray extends ArraySort{
public int[] ar;

public void creatArray() {
  System.out.println("请输入想创建的数组长度:");
  Scanner sc=new Scanner(System.in);
  int i=sc.nextInt();
  ar=new int[i];
  System.out.println("请输入数组元素:");
  for(int j=0;j<this.ar.length;j++)
  {
  Scanner sd=new Scanner(System.in);
  this.ar[j]=sd.nextInt();///数组初始化完成
  }
  System.out.println("初始化后的结果:");
  for (int k=0;k<this.ar.length;k++) {
        System.out.print(this.ar[k]+",");
        }
        System.out.println();

  }
    public void output(){
        for(int a=0;a<this.ar.length;a++) {
            System.out.printf(this.ar[a]+",");

        }


    }

  public static void main(String agrs[]) {

  }


  }

这是另外的类

你怕是在逗我,首先你的代码写的就有问题,第一:SetArray方法,方法名应该遵循驼峰命名规则,首个字符应该小写。第二:SetArray方法 i = -- i,这是什么操作,直接 --i 就行了。第三:Scanner 没有关闭。第四:明明Scanner可以重用非要在for循环中每次都new一个。最后你所说的问题:在你的ArraySort中有个数组叫 sim,在你的TestArray中压根就没有对它进行操作,你的setOrder方法操作的是 sim,不是你TestArray中创建的数组,你最后的setOrder的调用是对你上面数组的重复调用

排序和输出的数组不是一个。ArraySort中setOrder是对数组sim进行排序,而TestArray中output是对数组ar进行输出

https://www.xiexiebang.com/a14/201905159/09d4f5f3b8455b0a.html