Ordenar hilos para que se ejecuten en el orden en que fueron creados / iniciados

¿Cómo puedo ordenar hilos en el orden en que fueron instanciados? ¿Cómo puedo hacer que el siguiente programa imprima los números 1 ... 10 en orden?

public class ThreadOrdering {
    public static void main(String[] args) {

        class MyRunnable implements Runnable{
            private final int threadnumber;

            MyRunnable(int threadnumber){
                this.threadnumber = threadnumber;
            }

            public void run() {
                System.out.println(threadnumber);
            }
        }

        for(int i=1; i<=10; i++){
            new Thread(new MyRunnable(i)).start();
        }
    }
}

Respuestas a la pregunta(10)

Su respuesta a la pregunta