intermediateOOP
Classes & Objects
Object-Oriented Programming: define classes, create objects, and manage state.
In this lesson
01Defining a Class
Classes are blueprints for objects. They bundle data (attributes) and behavior (methods).
Python
1class Dog:2 def __init__(self, name, breed):3 self.name = name4 self.breed = breed56 def bark(self):7 return f"{self.name} says Woof!"89 def __str__(self):10 return f"{self.name} ({self.breed})"1112rex = Dog("Rex", "German Shepherd")13print(rex.bark())14print(rex)
Output
Rex says Woof! Rex (German Shepherd)
02Instance vs Class Variables
Instance variables are unique to each object; class variables are shared across all instances.
Python
1class Employee:2 company = "TechCorp" # class variable34 def __init__(self, name, salary):5 self.name = name # instance variable6 self.salary = salary78emp1 = Employee("Alice", 80000)9emp2 = Employee("Bob", 90000)1011print(emp1.company) # TechCorp12print(emp2.company) # TechCorp13print(emp1.salary) # 80000
Output
TechCorp TechCorp 80000