بستن منو
۳۱۹
تعداد کلیدهای این موضوع
لیست همه کلیدهای این موضوع
مباحث اولیه برای آشنایی با متلب
7
بردارها و ماتریس ها در متلب
51
دستورهای ساده و پرکاربرد در متلب
4
توابع در متلب
10
متغیرها و تبدیل متغیرها در متلب
8
m-file ها در متلب
2
نمایش اطلاعات در خروجی متلب (پنجره commands)
3
رسم شکل های دو بعدی در متلب
16
رسم شکل های سه بعدی در متلب
12
رسم چند شکل با هم، در متلب
5
رسم شکل ها و نمودارهای خاص، در متلب
11
رسم شکل های هندسی ساده، در متلب
6
تعیین ویژگی های خط های رسم شده در شکل، در متلب
6
تعیین ویژگی های محورهای مختصات شکل، در متلب
6
نمایش متن در شکل (عنوان، توضیح و ...)، در متلب
5
تعیین یا تغییر ویژگی های شکل (قبل از رسم شکل)، در متلب
10
تعیین یا تغییر ویژگی های شکل (بعد از رسم شکل)، در متلب
9
پردازش تصویر و کار با عکس ها، در متلب
15
ساخت انیمیشن در متلب
1
عملیات های ریاضی در متلب
46
متغیرها و معادلات سمبلیک در متلب
4
رشته ها (متن ها - strings) در متلب
18
حلقه ها (for و while)، در متلب
3
آرایه ها (Array)، در متلب
2
آرایه های سلولی (cell arrays) در متلب
6
دستورات شرطی (if و else و switch و ...)، در متلب
2
خطاهای رایج در متلب
2
برنامه نویسی شیء گرا (object oriented programming) در متلب
1
سیمولینک (Simulink) در متلب
5
GUI و واسطه های گرافیکی، در متلب
5
کار با فایل ها و پوشه ها، در متلب
10
تاریخ و زمان، در متلب
3
توقف موقتی یا کامل برنامه، در متلب
4
برنامه های متلب آماده برای دانلود
1
Excel و متلب
1
مباحث عمومی در متلب
19
×

دانلود فروشگاه اندروید کلیدستان

176

نویسنده

علیرضا گلمکانی ( admin )

شماره کلید
دسته کلید - دسته بندی

تعریف یک کلاس (class)، با دستور classdef در متلب

همان طور که می دانید، در برنامه نویسی شیء گرا (object oriented programming)، با تعریف کلاس ها (classes) و سپس ساخت شیء (object) از آن کلاس ها، سر و کار داریم. نرم افزار متلب، خود دارای تعدادی کلاس (class) آماده است که می توانیم از آنها استفاده کرده و شیء های (objects) مورد نظر خود را بسازیم، اما برای مواقعی که فرد قصد دارد، خود یک کلاس جدید تعریف کند نیز دستور classdef در متلب، در نظر گرفته شده است.

شکل کلی استفاده از دستور classdef در متلب، به صورت زیر می باشد :


classdef classname
   properties
      PropName
   end
   methods
      methodName
   end
   events
      EventName
   end
   enumeration
      EnumName (arg)
   end
end

کد بالا، باید درون یک m-file با همان نام انتخاب شده برای کلاس (در اینجا، نام classname)، نوشته شده و ذخیره شود. بنابراین، مثلا برای کد بالا، باید این کد، درون فایلی با نام classname ذخیره شود (این کد، شکل کلی تعریف کلاس را نشان می دهد، نه اینکه کدهای واقعی یک کلاس باشد).

کدها با دستور classdef شروع شده و با یک end ، تمام می شوند. بعد از دستور classdef ، نام مورد نظرمان برای کلاس (class) را می نویسیم که در کد بالا، نام classname انتخاب شده است.

در قسمت properties ، اطلاعاتی که کلاس، شامل آنها می باشد را تعریف می کنیم.

روش های (methods) یک کلاس، عملیات هایی (operations) هستند که توسط آنها می توانیم با شیء های ساخته شده از آن کلاس، کار کنیم. ما این عملیات ها را به صورت توابع (functions) مختلف برای آن کلاس، تعریف می کنیم. اگر قبلا با نحوه تعریف تابع در متلب آشنا شده اید، باید بگویم که این بخش از کدهای تعریف کلاس، شامل کدهایی مشابه کدهای ساخت تابع در متلب می باشد.

در قسمت events ، پیام هایی (messages) را تعریف می کنیم که هنگام رخ دادن برخی عمل های خاص، نمایش داده می شوند.

برای عدم گیج شدن، فعلا کاری به بقیه بخش های کلاس نداریم و یک مثال ساده که در آن، تنها روش ها (methods) به کار رفته اند را ذکر می کنیم :

مثال

قصد داریم یک کلاس با نام my_class بسازیم که دارای یک روش (method) با نام say_hello باشد و عملکرد این روش به این صورت باشد که عبارت hello را در خروجی چاپ کند. برای این منظور، در یک m-file با نام my_class ، کدهای زیر را می نویسیم :


classdef my_class
    methods
        function say_hello(obj)
            disp('hello');
        end
    end
end

بنابراین با نوشتن کدهای فوق درون فایل my_class.m ، کلاسی با نام my_class تعریف کرده ایم و این قابلیت را به وجود آورده ایم که شیء های مورد نظرمان را از این کلاس بسازیم (مسیر حاوی فایل my_class.m ، باید جزء مسیرهای تعریف شده برای متلب باشد تا متلب بتواند این فایل را بیابد).

با ساخت یک کلاس (class)، عملا هیچ کدی را اجرا نکرده ایم و زمانی یک سری کد، در متلب اجرا خواهد شد که از آن کلاس، یک شیء (object) بسازیم. اکنون فرض کنید که بخواهیم از کلاس my_class ، یک شیء با نام A بسازیم. برای این منظور، کد زیر را می نویسیم :


clear all
close all
clc

A=my_class;

سه خط اول کدها، برای عدم تداخل کد فعلی، با برنامه های قبلی اجرا شده در متلب می باشد.

چون شیء A از روی کلاس my_class ساخته شده، بنابراین تمامی روش های تعریف شده در کلاس my_class را در خود دارد. بنابراین شیء A دارای یک روش با نام say_hello می باشد. برای اینکه بخواهیم روش say_hello برای شیء A اجرا گردد، باید کد زیر را بنویسیم :


A.say_hello

همان طور که مشاهده می کنید، ابتدا باید نام شیء (object) نوشته شود، سپس یک علامت نقطه (.) و بعد از آن، نام روش (method) مورد نظر ذکر گردد.

نتیجه :


hello

بنابراین با اجرا شدن روش say_hello برای شیء A ، کلمه hello در خروجی چاپ شده است.

کپی برداری از محتوای سایت کلیدستان، ممنوع بوده و پیگرد قانونی دارد. (تنها استفاده شخصی کاربر، مجاز است) (کپی برداری توسط سایر وب سایت ها = حرام) (بیشتر بدانید)

خوانده شد
مبحث بالا، مفید بود و سایت کلیدستان را دوست داشتم :
محبوب کردن این مبحث در گوگل :
اون چیزی که میخواستم نبود :
سوال دارم :
ارسال نظر :
نظرات 0 0 0

*** نظر بدهید

دسترسی سریع

×

شماره کلید


کلید
×

شماره دسته کلید


دسته کلید
×

جستجو


جستجو

راهنمای دستورات متلب (MATLAB)

راهنمای دستورات متلب (MATLAB) بر اساس حرف اول دستور :

A B C D E F G H I J K L M N O P Q R S T U V W X Y Z

بستن منو
۷۹
تعداد کلیدهای این موضوع
لیست همه کلیدهای این موضوع
دسترسی سریع به دسته کلیدها :

Introduction to Programming with MATLAB Image Processing Using MATLAB
مجموعه ویدئوهای آموزشی مقدمه ای بر برنامه نویسی متلب (MATLAB) - مجموعه Introduction to Programming with MATLAB
42
مجموعه ویدئوهای آموزشی پردازش تصویر در متلب (MATLAB) - مجموعه Image Processing Using MATLAB
37
بستن منو
۳۳
تعداد کلیدهای این موضوع
لیست همه کلیدهای این موضوع
انواع رسم شکل در متلب
24
ساخت انیمیشن در متلب
3
GUI در متلب
6

آخرین ارسال های انجمن (در زمینه برنامه نویسی متلب)

آخرین ارسال های انجمن (در زمینه برنامه نویسی متلب)
موضوع تاریخ و زمان نویسنده آخرین ارسال تعداد پاسخ انجمن
راهنمایی برای نوشتن function
۱۳۹۶/۰۹/۰۲, ۱۱:۳۵ ب.ظ
Matlab2017
fgh.rezaei
1 سوال و جواب در مورد نرم افزار متلب (MATLAB)
نوشتن تابع در متلب
۱۳۹۶/۰۸/۲۹, ۱۱:۰۳ ب.ظ
12233445566
admin
1 سوال و جواب در مورد نرم افزار متلب (MATLAB)
آموزش نحوه دسترسی به مطالب سایت mathworks.com برای ایرانیان
۱۳۹۶/۰۸/۲۶, ۰۶:۱۹ ب.ظ
admin
negahban
2 سوال و جواب در مورد نرم افزار متلب (MATLAB)
چگونه ماتريس n*n در صفحه gui بعنوان خروجي نمايش بدهيم ؟ (در متلب)
۱۳۹۶/۰۸/۲۵, ۱۲:۴۸ ب.ظ
sshmha
Mjb
5 سوال و جواب در مورد نرم افزار متلب (MATLAB)
متلب
۱۳۹۶/۰۸/۲۳, ۰۲:۴۱ ق.ظ
arghavaaan
matlabi
1 سوال و جواب در مورد نرم افزار متلب (MATLAB)
فاصله هر کدوم از نقاط مجموعه تا یک عدد تصادفی (random) از مجموعه، در متلب
۱۳۹۶/۰۸/۲۳, ۱۲:۵۷ ق.ظ
samane
rreihaneh
2 سوال و جواب در مورد نرم افزار متلب (MATLAB)
سوال مهم
۱۳۹۶/۰۸/۲۱, ۰۹:۲۲ ب.ظ
ahmadtakapoy
ahmadtakapoy
0 سوال و جواب در مورد نرم افزار متلب (MATLAB)
ایجاد ماتریس (متلب - MATLAB)
۱۳۹۶/۰۸/۲۰, ۰۴:۳۲ ب.ظ
Matlab2017
admin
3 سوال و جواب در مورد نرم افزار متلب (MATLAB)
تشکیل بردار با بعد نامعلوم (متلب - MATLAB)
۱۳۹۶/۰۸/۲۰, ۰۴:۰۵ ب.ظ
saragol
admin
1 سوال و جواب در مورد نرم افزار متلب (MATLAB)
سوال در مورد حلقه فور و برداری کردن (متلب - MATLAB)
۱۳۹۶/۰۸/۲۰, ۰۳:۴۵ ب.ظ
mohammad13
admin
1 سوال و جواب در مورد نرم افزار متلب (MATLAB)
انتگرالگیری از درایه های ماتریس با دستور Trapz (متلب - MATLAB)
۱۳۹۶/۰۸/۱۷, ۰۶:۲۸ ب.ظ
fzare
fzare
0 سوال و جواب در مورد نرم افزار متلب (MATLAB)
کلاس بندی آیریس دیتا ست
۱۳۹۶/۰۸/۱۵, ۱۰:۲۰ ب.ظ
امید غفاری
امید غفاری
0 سوال و جواب در مورد نرم افزار متلب (MATLAB)
داده های ورودی
۱۳۹۶/۰۸/۱۱, ۰۳:۳۵ ب.ظ
Matlab2017
Matlab2017
0 سوال و جواب در مورد نرم افزار متلب (MATLAB)
کمک در خصوص ترسیم پوسته مشبندی رنگی
۱۳۹۶/۰۸/۰۷, ۱۰:۰۱ ب.ظ
sam1361
sam1361
1 رسم شکل در متلب (MATLAB)
تولید داده های سری زمانی
۱۳۹۶/۰۸/۰۲, ۰۸:۲۶ ب.ظ
Behzad.b93
Behzad.b93
0 سوال و جواب در مورد نرم افزار متلب (MATLAB)
M file (متلب - MATLAB)
۱۳۹۶/۰۸/۰۲, ۰۹:۱۰ ق.ظ
Matlab2017
Matlab2017
2 سوال و جواب در مورد نرم افزار متلب (MATLAB)
رسم نمودار دو متغیره سیگما (متلب - MATLAB)
۱۳۹۶/۰۷/۲۹, ۱۲:۲۵ ب.ظ
estarkhi
admin
1 سوال و جواب در مورد نرم افزار متلب (MATLAB)
ورودی دادن به ماتریس n*m (متلب - MATLAB)
۱۳۹۶/۰۷/۲۹, ۱۲:۰۸ ب.ظ
faroogh
admin
2 سوال و جواب در مورد نرم افزار متلب (MATLAB)
تعریف متغیر (متلب - MATLAB)
۱۳۹۶/۰۷/۲۴, ۰۷:۲۰ ب.ظ
erashidi
admin
1 سوال و جواب در مورد نرم افزار متلب (MATLAB)
تابع خودهمبستگی در متلب
۱۳۹۶/۰۷/۲۰, ۱۲:۴۴ ب.ظ
le.sa
le.sa
0 سوال و جواب در مورد نرم افزار متلب (MATLAB)
عملیات ریاضی روی ماتریس
۱۳۹۶/۰۷/۱۲, ۱۲:۵۸ ب.ظ
taniala
mohammadhadi2031
1 بردارها و ماتریس ها در متلب (MATLAB)
یافتن جفت عدد
۱۳۹۶/۰۶/۲۶, ۰۹:۳۳ ب.ظ
aaalian
aaalian
0 سوال و جواب در مورد نرم افزار متلب (MATLAB)
حداقل مربعات
۱۳۹۶/۰۶/۲۶, ۰۲:۵۱ ب.ظ
bfndez
bfndez
0 راهنمایی در مورد توابع متلب (MATLAB)
مشکل در save نمودار با فرمت eps (متلب - MATLAB)
۱۳۹۶/۰۶/۲۴, ۱۰:۳۳ ق.ظ
hhpp
admin
1 سوال و جواب در مورد نرم افزار متلب (MATLAB)
دستور mesh
۱۳۹۶/۰۶/۱۲, ۰۴:۲۲ ق.ظ
petrose
petrose
0 سوال و جواب در مورد نرم افزار متلب (MATLAB)
مشاهده 1000 ارسال آخر انجمن (در زمینه برنامه نویسی متلب)

آخرین کلیدهای غیررایگان

شما هم می توانید کلیدهای غیررایگان منتشر کنید (بیشتر بدانید)