Structurally, the Java language starts with packages. A package is the Java language's namespace mechanism. Within packages are classes, and within classes are methods, variables, constants, and more.
Mechanics for class description:
- Defining a class creates a new object type with the same name
- Every object belongs to some object type, it is an instance of some class
- A class definition is like a template for objects: it specifies what attributes the objects have and what methods can operate them
- The methods that operate on a type are defined in the class definiton fot that type