int , float , double , long , short , boolean and char are examples of primitive data types. You can’t invoke methods on these data types and they don’t have a high memory footprint , which is their striking difference from classes. Everything else is a class (or class-like in the case of interfaces and enums).