This document discusses UML class diagrams. It begins by explaining that a class diagram is a static structure diagram that describes the structure of a system by showing classes, interfaces, associations, collaborations and constraints. It then discusses key aspects of class diagrams including notations used to represent classes and relationships, common relationships like association, aggregation, composition, generalization and realization. It provides examples to illustrate these concepts.