Consider:
public class Racer extends Thread {
public static int a;
protected class R1 extends Thread {
public void run() { a = 1; } };
protected class R2 extends Thread {
public void run() { a = 2; } };
public void run() {
R1 r1 = new R1; R2 r2 = new R2;
r1.start(); r2.start(); yield();
r1.join(); r2.join();
java.io.System.out.println(a); }; };