Why is getColumnSpecs() private?

Is there a good reason why getColumnSpecs() in the class DataTableSpec is private?

These are three get routines from that class:

    public DataColumnSpec getColumnSpec(final int index)

    DataColumnSpec[] getColumnSpecs()

    public DataColumnSpec getColumnSpec(final String column)

The middle routine returns all of the columnSpecs:

    DataColumnSpec[] getColumnSpecs() {
        return m_columnSpecs;
    }

But as it is not marked as public I can't iterate over them without using the counter.

It's a small issue but perhaps illuminating. Note that I'm still using KNIME 2.10 and have not yet upgraded to KNIME 2.11.
 

The arrays are mutable and that would cause problems if the users of the API would null out some of the specs. It think DataTableSpec is an Iterable<DataColumnSpec>, so no need to use indices unless you want those.