The Java Collections Framework provides a set of abstract data type interfaces and implementations that offer both a wealth of useful functionality, and a solid foundation for extending that functionality.