Code Explanation:
1. Class Definition
class A:
Explanation:
Defines a class named A.
2. Class Variable
x = 10
Explanation:
This is a class variable.
It belongs to the class, not to any specific object.
It can be accessed using:
A.x
obj.x
3. Method Definition
def show(self):
Explanation:
show is an instance method.
self refers to the current object.
x = 20
Explanation:
This creates a local variable x inside the show() method.
This does NOT change:
the class variable x
or the object variable
This x = 20 exists only inside this method.
4. Object Creation
obj = A()
Explanation:
Creates an object obj of class A.
No instance variable x is created here.
The class variable x = 10 still exists.
5. Method Call
obj.show()
Explanation:
Calls the show() method.
Inside show():
x = 20 is created as a local variable
It is destroyed after the method finishes
It does NOT affect obj.x or A.x.
6. Print Statement
print(obj.x)
Explanation:
Since obj has no instance variable x, Python looks for:
Instance variable
Class variable
It finds:
A.x = 10
So it prints 10.
Final Output
10


0 Comments:
Post a Comment