1. A computer-implemented method of accessing heterogeneous objects in an array, comprising: providing a base class in a programming environment provided by a computing device, the base class supporting heterogeneous array behavior; creating a heterogeneous array in the programming environment, the heterogeneous array having a plurality of elements, classes of the elements being a plurality of classes where each class is either the base class or a subclass thereof; determining with the computing device a greatest common base class hierarchically common to the elements; identifying programmatically with the computing device a common subset of methods available for use with the elements in the heterogeneous array, the common subset of methods being defined by the greatest common base class; calling a specified method with the array as a parameter, the specified method included in the common subset of methods, the specified method operating on the array in the programming environment as an array consisting of greatest common base class objects, a result of the specified method call displayed or stored.