picha

Python somo la 29: Encaosulation kwneye python

Katika somo hili utajifunza maana ya encapsulation na sheria za uandishi wake

Encapsulation kwenye pyton

 


 

1. Encapsulation ni nini?

Encapsulation ni dhana ya kuficha data ya ndani ya object ili isiweze kufikiwa moja kwa moja kutoka nje ya class.

 


 

2. Kwanini Tunahitaji Encapsulation?

 


 

3. Viwango vya Ufikiaji (Access Levels)

Ili kufanikisha encapsulation, tunatumia viwango vya ufikiaji vya property na method kwenye class. Python hutoa viwango vitatu vya msingi:

a) Public

Mfano:
class Example:

    def __init__(self):

        self.data = "Public Data"  # Public

 

obj = Example()

print(obj.data)  # Inaweza kufikiwa moja kwa moja

 

 

b) Protected

class Example:

    def __init__(self):

        self.data = "Protected Data"  # Private attribute

# Kufikia private attribute moja kwa moja nje ya class

obj = Example()

print(obj.data)  

 

Katika mfano huo tumeweza kuprint attribute data bila ya tatizo nje ya class. Huu ni mfano wa public. Lakini sasa hebu tufanye attribute data kuwa protected.

 

Mfano

class Example:

    def __init__(self):

        self._data = "Protected Data"  # Private attribute

 

# Kufikia private attribute moja kwa moja nje ya class

obj = Example()

print(obj._data)



Pia kuna namna ambavyo protected inaweza kutumika lakini sio njia inayoshauriwa kutumia yaani haipendezi.

Mfano:
class Example:

    def __init__(self):

        self._data = "Protected Data"  # Protected

 

obj = Example()

print(obj._data)  # Inaweza kufikiwa lakini haipendekezwi

 

 

Mfano wa kurithi protected

class Parent:

    def __init__(self):

        self._data = "Protected Data"  # Protected attribute

 

    def display_data(self):

        print(f"Data from Parent: {self._data}")

 

class Child(Parent):

    def modify_data(self, new_data):

        self._data = new_data  # Accessing and modifying protected attribute

        print(f"Data modified in Child: {self._data}")

 

# Kutengeneza object ya Child class

child_obj = Child()

 

# Kufikia na kuonyesha protected attribute kupitia parent method

child_obj.display_data()  # Output: Data from Parent: Protected Data

 

# Kufikia na kubadilisha protected attribute kupitia child method

child_obj.modify_data("New Protected Data")  # Output: Data modified in Child: New Protected Data

 

# Kuhakikisha mabadiliko yanadumu

child_obj.display_data()  # Output: Data from Parent: New Protected Data

&nb...

Ingia sasa ili uweze kusoma makala hii yote.

Jiunge nasi WhatsApp kupata update zetu
Zoezi la Maswali

Nyuma Endelea


Umeionaje Makala hii.. ?

       
Author: Rajabu image Tarehe: 2024-12-03 17:15:53 Topic: Python Main: Masomo File: Download PDF Views 749

Share On:

Share follows: 0 | Unique share links followed: 0
Sponsored links
👉1 ai web app     👉2 Dua za Mitume na Manabii     👉3 Kitabu cha Afya     👉4 Bongolite - Game zone - Play free game     👉5 web hosting     👉6 kitabu cha Simulizi    

Post zinazofanana:

Python somo la 16: Jinsi ya kutumia break na continue kwenye loop

Katika somo hili tunakwenda kujifunza matumizi ya break na continue kwenye loop

Soma Zaidi...
PYTHON - somo la 7: Jinsi ya kubadili aina ya data

Katika soo hili utakwenda kujifunza jinsi ya kubaduli aina moja ya data kwena aina nyingine. Kwa mfano unaweza kubadili namba kuwa string ama kubadili string kuwa nanda ama kubadili float kuwa int.

Soma Zaidi...
Python somo la 49: Jinsi ya ku host project ya Django

Katika somo hili utakwenda kujifunza jinsi ya ku host website ya Django. Hapa tutakwenda kutuma plaform ya pythonanywhere.com.

Soma Zaidi...
Python somo la 22: Package kwenye Python

Hapa utakwenda kujifunz amaana ya package, aina zake na jinsi ya kuandika package.

Soma Zaidi...
Python somo la 61: Jinsi ya kutuma email kwenye django

Katika maeneo ya development, tunahitaji kutuma email mara nyingi kwa madhumuni ya: Kujaribu mfumo wa OTP Password reset System notifications Activation codes Lakini mara nyingi hatutaki emails ziondoke kwenda kwa watu halisi wakati bado tupo kwenye majaribio.

Soma Zaidi...
Python somo la 28: inheritance kwenye OOP

Katika somo hili utakwenda kujifunz amaana ya inheritance na sheria za kuiandika inheritance.

Soma Zaidi...