آموزش وراثت در پایتون، نکات جامع ارث بری در پایتون


آموزش وراثت در پایتون
براي خريد اين درس نياز است وارد سايت شويد. در صورت نداشتن حساب کاربري عضو شويد.

وراثت (Inheritance) در پایتون


ممکن است ما در برنامه کلاسی تعریف کنیم که عضوهای بسیار زیادی داشته باشد که ویژگی‌های مشترک زیاری نیز دارند. اما برخی از این اعضا علاوه بر ویژگی مشترکی که با دیگر اعضا دارند، ویژگی‌های خاصی نیز دارند. برای مدیریت این گونه اعضا ما نیاز به تعریف کلاس‌های فرزند برای کلاس اصلی خود داریم. برای مثال فکر کنید که ما یک کلاس به نام (وسایل نقلیه) داریم که ویژگی اصلی همه اعضای این کلاس قابلیت جا به جا کردن انسان‌ها است. اما ممکن است برخی از این اعضا دو چرخ داشته باشند و برخی دیگر چهار چرخ، پس در این صورت ما نیاز به تعریف دو کلاس فرزند به نام (دو چرخ‌ها) و (چهار چرخ‌ها) داریم.
حالا قرار است که ما یک کلاس به عنوان شخص (person) تعریف کنیم که فرزندان این کلاس معلم‌ها (teache) ، دانش‌آموزان (student) و کارمندان (employee) هستند. ویژگی مشترک همه این کلاس ها این است که همه آنها نام، نام خانوادگی و سن دارند اما معلم علاوه بر این کد استادی دارد، دانش‌آموز معدل دارد و کارمند مقدار حقوق دارد. برای نوشتن چنین کلاسی باید متغیر نام، نام خانوادگی و سن را درون کلاس والد (person) قرار دهیم و برای ویژگی خاص هر یک از کلاس‌های فرزند متغیری درون آنها تعریف کنیم.
نکته قابل توجه درباره کلاس‌ها این است که کلاس فرزند به همه توابع کلاس والدش دست رسی داشته و همه ویژگی‌های آنرا به ارث می‌برد.
برای این که یک کلاس فرزند کلاس دیگر شناخته شود باید در مقابل آن کلاس نام کلاس والدش را درون پرانتز قرار دهیم. در مثال زیر کلاس (teacher) فرزند کلاس (person) است.

 
class person:
class teacher(person):
 
توجه داشته باشید زمانی که ما یک کلاس فرزند تعریف می‌کنیم باید ابتدا نیازهای تابع والدش را برای آن ارسال کنیم. برای این کار باید متغیرهای مورد نیاز را برای تابع سازنده کلاس والد ارسال کنیم سپس متغیر خاص خودش را پر کنیم و به شکل زیر عمل می‌کنیم.
class person:
	def __init__(self,name,family,age)
	self.Name=name
	self. Family = family
self. Age = age

class teacher(person):
	def __init__(self,teachercod,name,family,age)
	person.__init__(self,name.family,age)
	self.Teachercod= teachercod

حالا باید برای هر یک از کلاس‌ها تابعی برای چاپ کردن اطلاعات تعریف کنیم. توجه داشته باشید که اطلاعات عمومی باید توسط تابع والد و اطلاعات خصوصی را توسط هریک از تابع‌ها چاپ کنیم.

class person:
	def __init__(self,name,family,age)
	self.Name=name
	self. Family = family
self. Age = age
def printpersoninfo(self):
	print(self.Name)
	print(self. Family)
	print(self. Age)

class teacher(person):
	def __init__(self,teachercod,name,family,age)
	person.__init__(self,name.family,age)
	self.Teachercod= teachercod
def printteacherinfo(self):
	print(self.Teachercod)

t= teacher(101,"Mehdi","Abbasi",38)
t. printpersoninfo()
t. printteacherinfo()

 

کاربران و همراهان همیشگی درسمن، اگر از دوره آموزش پایتون راضی بودید نظر خود را در قسمت تالار گفت وگو بنویسید، از تعامل و همکاری شما ممنونیم .

نظرات
فائزه  صادقی
faeze عالی بود

برای پاسخ باید وارد شوید

پشتیبانی 1
پشتیبانی 1

سلام وقت بخیر، متشکریم.

اگر سوالی داشتید پاسخ گو هستیم.

nophoto
علیرضا توضیحاتتون خیلی واضح و شفاف بود ... ممنون استاد

برای پاسخ باید وارد شوید

پشتیبانی 1
پشتیبانی 1 خواهش می کنیم، موفق و پیروز باشید.

نظر بدهید نشانی ایمیل شما منتشر نخواهد شد .
برای ارسال نظر نیاز است وارد سایت شوید. در صورت نداشتن حساب کاربری عضو شوید.


مشخصات دوره


مدرس دوره : مهدی عباسی
تعداد جلسات 20 جلسه
مدت زمان 534 دقیقه
حجم دوره 1/04 گیگابایت
سطح مهارت مقدماتی
وضعیت دوره پایان یافته
تعداد دانشجویان 2992
: میانگین امتیاز

رایگان
برای دسترسی به این دوره وارد یا عضو شوید.
مهدی عباسی

مهدی عباسی


درباره مدرس :

مهدی عباسی هستم، مسلط به حداقل ۲۰ زبان مطرح برنامه نویسی به صورت پیشرفته، مدیر عامل شرکت آریا نرم افزار و بنیانگذار آکادمی آنلاین درسمن، مسلط به تدریس دروس تخصصی کاردانی و کارشناسی کامپیوتر، پایگاه داده ... ده ها، برنامه نویسی پیشرفته، مبانی برنامه نویسی، مباحث ویژه طراحی وب و ....
بیشتر بدانید