Hey guys I just learned about this what is called ADT in java, but still I don't quite understand what it is. I tried reading the books several times but still I can't get the concept of what it is. There is also a keyword 'extend', what is that actually?? There is also the terminology of collection, Set<E>, bag, and List ADT. What is all that about?? Can someone explain it to me very briefly?? Many thanks to those who are willing to help me

n computing, an abstract data type (ADT) is a specification of a set of data and the set of operations that can be performed on the data. Such a data type is abstract in the sense that it is independent of various concrete implementations. The definition can be mathematical, or it can be programmed as an interface. The interface provides a constructor, which returns an abstract handle to new data, and several operations, which are functions accepting the abstract handle as an argument. ADTs typically seen in textbooks and implemented in programming languages (or their libraries) include: * Associative array * Complex number * Container * Deque * List * Multimap * Priority queue * Queue * Set * Stack * String