Class diagrams in UML describe objects and their relationships. Objects are instances of classes, which describe common attributes and behaviors. Classes are represented as boxes with attributes and operations. Associations between classes are shown as lines and can be qualified. Generalization defines inheritance between classes in a hierarchy. Aggregation models part-whole relationships where parts have coincident lifetimes with the whole. Composition is a stronger form of aggregation where parts cannot exist without the whole.