Abstract data type

Abstract is something that will not contain the implementation details.
Data type is something clasification of data based on the characteristics.
So i believe that abstract data type is something that creates new data types to the programmer with some of the impelementations. is my understaing about ADT is correct?

Then i saw some of the ADT like String ADT, Stack ADT, etc. Why they are calling this as an ADT.
Can be create ADT?

Is stack data type? For me data type is int, double, Person, Vertex. And Stack, Heap, Queue, List are data structures… I know, that in theory it’s not important, but what language are you interested in, it seems to me, that abstract data structure is interface if I understood you well…