| 1. Class Attributes are defined directly inside a class | 1. Instance Attributes are defined inside a constructor using the self parameter |
| 2. It shared across all objects. | 2. It shared specific to the object. |
| 3. Changing value by class attribute will be reflected to all the objects. | 3. Changing value of instance attribute will not be reflected to other objects. |
| 4. Class Attributes can be accessed using class name as well as using object with dot notation. | 4. Instance Attributes can be accessed using object dot notation. |