1*795d594fSAndroid Build Coastguard Worker public class Main { arrayCluster(IMagic[] magicArray)2*795d594fSAndroid Build Coastguard Worker static void arrayCluster(IMagic[] magicArray) { 3*795d594fSAndroid Build Coastguard Worker int i; 4*795d594fSAndroid Build Coastguard Worker 5*795d594fSAndroid Build Coastguard Worker for (i = 0; i < magicArray.length; i++) 6*795d594fSAndroid Build Coastguard Worker System.out.println(" " + i + ": " + magicArray[i].getSomeData()); 7*795d594fSAndroid Build Coastguard Worker } 8*795d594fSAndroid Build Coastguard Worker main(String args[])9*795d594fSAndroid Build Coastguard Worker public static void main(String args[]) { 10*795d594fSAndroid Build Coastguard Worker MagicClass magic = new MagicClass(); 11*795d594fSAndroid Build Coastguard Worker 12*795d594fSAndroid Build Coastguard Worker System.out.print("magic is "); 13*795d594fSAndroid Build Coastguard Worker System.out.println(magic.getSomeData()); 14*795d594fSAndroid Build Coastguard Worker 15*795d594fSAndroid Build Coastguard Worker MagicClass magicArray[] = new MagicClass[2]; 16*795d594fSAndroid Build Coastguard Worker magicArray[0] = new MagicClass(); 17*795d594fSAndroid Build Coastguard Worker magicArray[1] = new MagicClass(); 18*795d594fSAndroid Build Coastguard Worker arrayCluster(magicArray); 19*795d594fSAndroid Build Coastguard Worker } 20*795d594fSAndroid Build Coastguard Worker } 21*795d594fSAndroid Build Coastguard Worker 22*795d594fSAndroid Build Coastguard Worker class IntSource { getMagicInt()23*795d594fSAndroid Build Coastguard Worker public int getMagicInt() { return 64; } 24*795d594fSAndroid Build Coastguard Worker } 25*795d594fSAndroid Build Coastguard Worker 26*795d594fSAndroid Build Coastguard Worker interface IMagic { getSomeData()27*795d594fSAndroid Build Coastguard Worker public double getSomeData(); 28*795d594fSAndroid Build Coastguard Worker 29*795d594fSAndroid Build Coastguard Worker IntSource mIntSource = new IntSource(); 30*795d594fSAndroid Build Coastguard Worker public int MAGIC_INT = mIntSource.getMagicInt(); 31*795d594fSAndroid Build Coastguard Worker } 32*795d594fSAndroid Build Coastguard Worker 33*795d594fSAndroid Build Coastguard Worker class MagicClass implements IMagic { getSomeData()34*795d594fSAndroid Build Coastguard Worker public double getSomeData() { 35*795d594fSAndroid Build Coastguard Worker return this.MAGIC_INT; 36*795d594fSAndroid Build Coastguard Worker } 37*795d594fSAndroid Build Coastguard Worker } 38