A class is a blueprint for objects. It groups attributes and methods. A class_definition names the class name and declares members. A constructor initializes a new instance. Use this keyword or self keyword to refer to the current object. encapsulation hides data with access modifiers. inheritance lets a class extend a base class. polymorphism lets methods share a name with different behavior. class methods belong to the class, and instance methods belong to each object. Create objects with instantiation.