private DynamicTableColumn<ROW_TYPE, ?, ?> getColumnForDefaultColumnIdentifier(Class<?> clazz) {

		// note: we may have multiple columns with the same class.  It is not the normal case, 
		//       but it can happen for re-usable column classes.

		//@formatter:off
		List<DynamicTableColumn<ROW_TYPE, ?, ?>> matching =
			tableColumns.stream()
						.filter(c -> isColumnClassMatch(c, clazz))
						.collect(Collectors.toList())
						;
		//@formatter:on

		if (matching.size() > 1) {
			Msg.warn(this, "More than one column found matching class '" + clazz + "'");
		}

		return CollectionUtils.any(matching);
	}
Allows clients to defer column creation until after this parent class's constructor has been
called. This method will not restore any column settings that have been changed after
construction. Thus, this method is intended only to be called during the construction
process.
Ghidra/Framework/Docking/src/main/java/docking/widgets/table/GDynamicColumnTableModel.java