Prerequisites –
Encapsulation is one of the fundamental concepts in object-oriented programming (OOP). It describes the idea of wrapping data and the methods that work on data within one unit. This puts restrictions on accessing variables and methods directly and can prevent the accidental modification of data. A class is an example of encapsulation as it encapsulates all the data that is member functions, variables, etc.
Now, there can be some scenarios in which we need to put restrictions on some methods of the class, so that they can neither be accessed outside the class nor by any subclasses. To implement this private methods come into play.
In Python, private methods are methods that are intended to be used only within the class where they are defined. They are not meant to be accessed or used by other parts of the code outside of the class. Private methods are denoted by using double underscores before the method name, like this: __method_name()
.
The main purpose of private methods is to keep the implementation details of a class hidden from the outside world. By making certain methods private, developers can ensure that other parts of the code don't accidentally use them in ways that could lead to unintended behavior or bugs. This helps to improve the overall robustness and reliability of the code.
Python enforces the privacy of methods by using a name mangling technique that renames private method names with a prefix that includes the class name. This makes it more difficult (though not impossible) for other parts of the code to access them directly.
It's worth noting that private methods in Python are more of a convention than a strict rule. Since Python doesn't have true access modifiers like some other programming languages, it's still possible to access private methods from outside the class if you really want to. However, it's generally considered bad practice to do so
Australia
UK
UAE
Singapore
Canada
New
Zealand
Malaysia
USA
India
South
Africa
Ireland
Saudi
Arab
Qatar
Kuwait
Hongkong
Copyright 2016-2023 www.programmingshark.com - All Rights Reserved.
Disclaimer : Any type of help and guidance service given by us is just for reference purpose. We never ask any of our clients to submit our solution guide as it is, anywhere.