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 802

Share On:

Share follows: 0 | Unique share links followed: 0
Sponsored links
👉1 kitabu cha Simulizi     👉2 ai web app     👉3 Madrasa kiganjani     👉4 Simulizi za Hadithi Audio     👉5 Kitabu cha Afya     👉6 Sira ya Mtume Muhammad (s.a.w)    

Post zinazofanana:

Python somo la 34: Kutumia html kwneye python

Katika somo hili utakwend akujifunz ajinsi ya kutumia html kwneye python

Soma Zaidi...
Python somo la 44: Data Manipulation katika Django Templates

Katika somo hili utakwend akujifunza jinsi ya kucheza na data kuzibadili kwa namna mbali mbali kwenye template

Soma Zaidi...
PYTHON - somo la 8: method za namba zinazotumika kwenye python

Katika somo hili utakwenda kujifunza kuhusu number method yaani function zinazofanya kazi kwenye namba.

Soma Zaidi...
Python seomo la 55: Kutengeneza Simple Admin Dashboard ya CRUD

Katika somo hili tutajifunza jinsi ya kuunda dashboard rahisi ndani ya Django ambayo itaruhusu mtumiaji kuongeza, kusoma, kuhariri na kufuta taarifa za MenuItem bila kutumia Django built-in admin, bali kwa kutumia HTML templates na views tulizotengeneza sisi wenyewe.

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 6: Jinsi ya kujuwa aina ya data iliyotumika

Katika somo hili utajifunza jisni ya kujuwa aina ya data iliyotumika kwenye python

Soma Zaidi...