1f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project// Copyright 2007 The Android Open Source Project 2f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project 3f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project/** 4f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project * Return stuff. 5f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project */ 6f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Projectpublic class Main { 7f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project public static void main(String[] args) { 8f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project 9f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project System.out.println("pick 1"); 10f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project pickOne(1).run(); 11f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project System.out.println(((CommonInterface)pickOne(1)).doStuff()); 12f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project 13f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project System.out.println("pick 2"); 14f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project pickOne(2).run(); 15f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project System.out.println(((CommonInterface)pickOne(2)).doStuff()); 16f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project 17f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project System.out.println("pick 3"); 18f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project pickOne(3).run(); 19f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project } 20f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project 21f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project public static Runnable pickOne(int which) { 22f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project Runnable runme; 23f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project 24f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project if (which == 1) 25f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project runme = new ClassOne(); 26f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project else if (which == 2) 27f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project runme = new ClassTwo(); 28f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project else if (which == 3) 29f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project runme = new ClassThree(); 30f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project else 31f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project runme = null; 32f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project 33f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project return runme; 34f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project } 35f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project} 36f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project 37f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Projectclass ClassOne implements CommonInterface, Runnable { 38f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project public void run() { 39f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project System.out.println("one running"); 40f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project } 41f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project public int doStuff() { 42f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project System.out.println("one"); 43f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project return 1; 44f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project } 45f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project} 46f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project 47f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Projectclass ClassTwo implements CommonInterface, Runnable { 48f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project public void run() { 49f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project System.out.println("two running"); 50f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project } 51f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project public int doStuff() { 52f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project System.out.println("two"); 53f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project return 2; 54f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project } 55f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project} 56f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project 57f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Projectclass ClassThree implements Runnable { 58f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project public void run() { 59f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project System.out.println("three running"); 60f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project } 61f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project} 62f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project 63f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Projectinterface CommonInterface { 64f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project int doStuff(); 65f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project} 66