Control and Data Flow Execution of Java Programs