Python Private , Protected , Class and subClasses and Inheritance

تم تحميل الصفحة في 1,1811122 ثانية
Private , Protected , Class and subClasses and Inheritance

عـبـدالـله

.:: أبو مـحـمـد ::.
rankrankrankrankrank
إنضم
5 ديسمبر 2013
المشاركات
2,339
الإعجابات
3,100
النقاط
198
السلام عليكم ورحمة الله وبركاته

سأشرح هذا الكلاس قمت بعمله وسأشرح اهم النقاط المذكوره في العنوان

----
Private , Protected , Class and subClasses and Inheritance

الـ Father Class - Car

الـ subClasses - Move

الـ Inheritance - Copy



Python:
class Car: # Class Father

    def __init__(self,Name,key):
        self.name = Name
        self.key = key

    def __add__(self,Name,key):
        self.name = Name
        self.key = key
        return Car(self.name,self.key)

    def __str__(self):
        return "Car: {0} -> Model: {1}".format(self.name,self.key)

    class Move: # subClasses
        def __init__(self):
            self.mov = 200
        def __repr__(self):
            return "Move Car : {0}".format(self.mov)


class Copy(Car,Car.Move): # Inheritance Classes
    def __str__(self):
        return "Name Car: {0}\nModel Car: {1}\nMove Car: {2}".format(Car.name,Car.key,Car.Move.mov)

if __name__ == '__main__':

    Car = Copy("Camry",2017).__add__("Ford",2018)
    print(Car)

ان شاء الله واضحه الامور .

الآن قم بتغيير المتغير المتواجد في الـ Car في الـ __init__ الى self._name

سيتم قبوله في كلاس الـ Copy لانه اصبح Protected

الآن قم بنفس التغيير للمتغير الى self.__name

لن يتم قبوله في كلاس الـ Copy لانه اصبح Private


ان شاء الله اتضحت الامور اعتذر منكم الافضل التجربه وسيتبين كل شيء

بالتوفيق لك
 

Mariio

.:: مُراقب أقسام البرمجة ::.
rankrankrankrankrankrank
طاقم الإدارة
إنضم
1 مايو 2007
المشاركات
4,883
الإعجابات
4,431
النقاط
133
الإقامة
USA
ممكن شرح تفصلي اخي اكثر وشكراا لك

داخل الكلاس يوجد اقسام محمية
مثلا public تستطيع الوصول الى اي شيء داخله من اي مكان تريد
بلسبه الى private and protected
يوجد اختلاف مثلا صديق الكلاس يستطيع الوصل الى احدهم
بيمنا المحمي لا تستطيع الوصول اليه وتغير القيم حتى لا احد يعدل على البرنامج
لهذا اذا اردنا تغير القيمه من داخل برنامجنا يجب ان نكتب فونكشنز حتى يتم التغير

تعلم OOP مهم جدا في وقتنا واغلب الشركات تطلب شخص يجيد هذا الشيء لانها تسهل العمل الجماعي وتختصر الكثير من الوقت
مثلا تخيل انك تكتب لعبة ويوجد 100 شخصية داخل اللعبة وكل شخصية تستطيع الدفاع والهجوم
سوف تحتاج تكتب مثلا 200 كود للهجوم والدفاع
بينما لو كتبت كلاس سوف تكتب هذا مره واحده وكل مره تعدل على شيء بسيط جدا وتختصر وقت طويل على نفسك وترتب الكود
 

mr'hack

Beginner Developer
rankrank
إنضم
28 سبتمبر 2013
المشاركات
239
الإعجابات
201
النقاط
43
داخل الكلاس يوجد اقسام محمية
مثلا public تستطيع الوصول الى اي شيء داخله من اي مكان تريد
بلسبه الى private and protected
يوجد اختلاف مثلا صديق الكلاس يستطيع الوصل الى احدهم
بيمنا المحمي لا تستطيع الوصول اليه وتغير القيم حتى لا احد يعدل على البرنامج
لهذا اذا اردنا تغير القيمه من داخل برنامجنا يجب ان نكتب فونكشنز حتى يتم التغير

تعلم OOP مهم جدا في وقتنا واغلب الشركات تطلب شخص يجيد هذا الشيء لانها تسهل العمل الجماعي وتختصر الكثير من الوقت
مثلا تخيل انك تكتب لعبة ويوجد 100 شخصية داخل اللعبة وكل شخصية تستطيع الدفاع والهجوم
سوف تحتاج تكتب مثلا 200 كود للهجوم والدفاع
بينما لو كتبت كلاس سوف تكتب هذا مره واحده وكل مره تعدل على شيء بسيط جدا وتختصر وقت طويل على نفسك وترتب الكود
ا
الله يبارك لك فهمت الان شكراا لك اخي
 

عـبـدالـله

.:: أبو مـحـمـد ::.
rankrankrankrankrank
إنضم
5 ديسمبر 2013
المشاركات
2,339
الإعجابات
3,100
النقاط
198
العفو اخواني بالله

المشكله ليس لدي كمبيوتر بالوقت الحالي لدواعي السفر

والكود قمت بكتابته من خلال الموبايل

فأذا فيه اي خطئ لعدم انتباهي له اعذروني

والقادم ان شاء الله افضل بأذن الله
 

الأعضاء النشطين حاليآ الذين يشاهدون هذا الموضوع (1 عضو و 0 ضيف)

خيارات الاستايل

نوع الخط
مودك
اخفاء السايدر بار OFF
توسيط المنتدى OFF
فصل الأقسام OFF
الأقسام الفرعية OFF
عرض المشاركات
حجم الخط
معلومات العضو OFF
إخفاء التوقيع OFF

إرجاع خيارات الإستايل