Explanation:
1. Class Definition
class Test:
x = 5
Explanation:
Test is a class with a class variable x initialized to 5.
Class variables are shared across all instances unless overridden in an instance.
2. Creating Instances
t1 = Test()
t2 = Test()
Explanation:
t1 and t2 are instances of the Test class.
Initially, neither instance has its own x, so they both refer to the class variable Test.x, which is 5.
3. Overriding Instance Variable
t1.x = 10
Explanation:
Here, we assign 10 to t1.x.
Python now creates an instance variable x inside t1 that shadows the class variable x.
t2.x still refers to the class variable Test.x.
Test.x remains unchanged (5).
4. Printing Values
print(t1.x, t2.x, Test.x)
Step-by-step Output:
t1.x → 10 (instance variable of t1)
t2.x → 5 (still refers to class variable Test.x)
Test.x → 5 (class variable remains unchanged)
Final Output:
10 5 5


0 Comments:
Post a Comment