نمایش نتایج 1 تا 2 از 2

نام تاپیک: آشنایی با زبان برنامه نویسی #C و کار با کلاس ها

  1. #1

    Thumbs up آشنایی با زبان برنامه نویسی #C و کار با کلاس ها

    باسلام وخسته نباشید.به سری آموزش های صفرتاصد سی شارپ خوش آمدید.دراین جلسه به معرفی زبان سی شارپ ودات نت فریم ورک که توسط شرکت مایکروسافت توسعه داده شده است،خواهیم پرداخت.باماهمراه باشید!به نام خدا؛
    نکته: توجه کنید که تمامی آموزش‌هایی که برای زبان برنامه‌نویسی سی‌شارپ در حال تهیه می‌باشند، با استفاده از سرفصل‌های وب‌سایت Homeandlearn.co.uk می‌باشد.

    قطعاً تعداد کثیری از شما، خصوصاً دانشجویانی که در رشته های “مهندسی نرم افزار” در حال تحصیل هستند، می بایست که به چندین زبان برنامه نویسی تسلط کاملی داشته باشند. البته توجه کنید که تنها یادگیری اولین زبان برنامه نویسی شاید برای شما مشکل باشد؛ اما با فراگیری اولین زبان، یادگیری دیگر زبان ها برای شما بسیار راحت تر از آنچه که تصور می کنید خواهد بود!
    از این رو، تصمیم بر آن شد که ابتدا با زبان بسیار جذاب، قدرتمند و ساده C#‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎ ‎‎‎‎‎‎‎‎‎‎‎‎‎ (تلفظ کنید: سی شارپ) آموزش خود را شروع کنیم. کسانی که با این زبان آشنایی مختصری دارند، قطعاً می دانند که این زبان چقدر قدرتمند و البته ساده تر نسبت به زبان های دیگر می باشد. جذابیت آن نیز فراموش نشود!

    اگر در زمینه برنامه نویسی کمی اطلاعات داشته باشد، احتمالاً می دانید که بعضی زبان ها همانند C++‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎ ‎‎‎‎‎‎‎‎‎‎‎‎‎ (سی پلاس پلاس) یا C#‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎ ‎‎‎‎‎‎‎‎‎‎‎‎‎ (سی شارپ) احتمال می رود به دو صورت کلی، بنا بر خواست و نیاز برنامه نویس، اجرا شود؛ یا Console Application و یا Windows Application.
    جهت آشنایی با یک نمونه بسیار ساده از Console Application، می توان به نرم افزار بسیار ساده (اما پرکاربرد) CMD اشاره کرد. اگر تا کنون محیط نرم افزار CMD به چشمانتان نخورده است، مراحل زیر را طی کنید:

    • اگر از Windows 7 استفاده می کنید:
    • ابتدا وارد منوی استارت شوید؛
    • تایپ کنید: ‘run’؛ سپس Enter را بفشارید.








    در پنجره ای که برای شما باز خواهد شد، بنویسید: cmd

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

    Windows Application نیز حتماً همه شما با آن آشنایی دارید. تمامی نرم افزارهای موجود همانند: Paint، Windows Media Player، My Computer و غیره را با نام Windows Application می شناسیم.
    برای شروع برنامه نویسی به زبان C#‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎ ‎‎‎‎‎‎‎‎‎‎‎‎‎، شما می بایست نرم افزار Visual Studio را بر روی سیستم خود نصب کنید. ما برای این آموزش نسخه Visual Studio 2010 Ultimate را جهت استفاده پیشنهاد میکنیم. اگر این نسخه را ندارید، پیشنهاد می شود که به نحوی (دانلود کردن یا خرید دیسک آن) تهیه نمایید.
    توجه: البته دقت کنید که می‌توانید از نسخه Express و رایگان Visual Studio نیز استفاده کنید؛ که با حجم بسیار کمتر نسبت به Visual Studio 2010 Ultimate، در سایت رسمی مایکروسافت قرار دارد.
    بر روی منوی Start وارد شوید، و نرم افزار Microsoft Visual Studio را اجرا کنید.


    هنگامی که Visual Studio را اجرا نموده اید، از منوی بالا، بر روی File کلیک کرده و سپس گزینه New را برگزینید و Project را انتخاب کنید.


    در پنجره ای که برای شما باز خواهد شد، اگر که شما از Visual Studio 2010 Ultimate استفاده می کنید، از منوی سمت چپ، در بخش Installed Templates، Visual C#‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎ ‎‎‎‎‎‎‎‎‎‎‎‎‎ را انتخاب کنید.
    در بخش اصلی (که در وسط پنجره قرار دارد،) بر روی Console Application کلیک کنید تا انتخاب شود.
    در بخش زیر آن، مقدار مقابل Name، برای پروژه خود یک نام دلخواه انتخاب کنید.
    مقدار مقابل Location، محل قرارگیری پروژه خود را مشخص کنید.
    مقدار مقابل Solution Name نیز به تبع، از مقدار Name پیروی می کند. (اما می توانید آن را تغییر دهید!)
    در انتها، بر روی OK کلیک کرده تا پروژه شما ساخته شود.


    هنگامی که پروژه آماده شد، پنجره ای همانند پنجره زیر به شما تحویل داده میشود که شامل کدهایی هست که از پیش تعریف شده اند. با دیدن این کدها نترسید؛ هیچ چیز خاصی (فعلاً!) ندارند. پس خیالتان از بابت همه چیز راحت باشد.

    علاوه بر بخشی که کدها در درون آن قرار دارند، در سمت راست، بخشی به نام Solution Explorer مشاهده می شود که یک نمای کلی از پروژه شما برایتان نمایان است. (اگر Solution Explorer را مشاهده نمی کنید، با استفاده از منوی View در بالای نرم افزار Visual Studio، گزینه Solution Explorer را برگزینید.


    خوب، در جایی که در عکس زیر نمایش داده می شود، بر روی علامت X کلیک کنید تا Program.cs بسته شود.

    حال به Solution Explorer مراجعه کنید؛ بر روی Program.cs دوبار کلیک کنید. خواهید دید که پنجره کدها مجدداً نمایان می شود.
    حال بر روی علامت + در کنار Properties در بخش Solution Explorer کلیک کنید تا به شکل زیر فولدر Properties باز شود. بر روی فایل AssemblyInfo.cs دوبار کلیک کنید.

    نام این فایل AssemblyInfo می باشد که حاوی اطلاعاتی در رابطه با برنامه شما می باشد. کدهایی شبیه به کدهای زیر را خواهید دید. لازم نیست به کدها دقت کنید چون تقریباً به آن نیازی ندارید. کافیست که بر روی سربرگ AssemblyInfo.cs بروید و X را کلیک کنید تا بسته شود.

    تا اینجا هیچ کدی ننوشته ایم و تنها قصد معرفی Visual Studio را برای افرادی که با محیط آن آشنا نیستند، بود. دقت کنید که شاید جلسات اول (خصوصاً جلسه اول و دوم) برای خیلی‌ها بسیار کِسِل کننده باشد. من از شما خواهش میکنم که دو جلسه اول که بیشتر معرفی و آموزش کار با Visual Studio است را کمی تحمل کنید؛ پس از آن به شما قول خواهم داد که علاوه بر شروع کدنویسی، خودِ کدنویسی نیز برای شما لذت بخش شود.
    دقت کنید که جلسه به جلسه، هر سوالی را که داشته باشید، حتماً حتماً در بخش نظرات بپرسید. زیرا انباشته شدن سوالات روی هم، باعث خواهد شد که مطالب جلسات بعدی را به هیچ عنوان متوجه نشوید.
    جلسه بعدیِ آموزش، بزودی قرار خواهد گرفت. به امید دیدار.

    این مقاله بر اساس سرفصل‌های وب‌سایت HomeAndLearn.co.uk تنظیم شده و توسط نویسنده این مطلب، از ابتدا تهیه شده است.

    __________________________________________________ __________________________________________________ __________________________________________________ ___________________

    آموزش کار با کلاس ها در #C


    در این درس قصد داریم تا شما را با مفهوم کلاس ( class ) در C#‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎ ‎ و کاربرد آن ها آشنا کنیم. همچنین به بیان نحوه تعریف کلاس ها در برنامه و تعیین خواص و متدها برای آن ها خواهیم پرداخت.
    اول از همه با مفهوم کلاس Class در C#‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎ ‎ شروع می کنیم. یک کلاس، مجموعه ای از خاصیت ها، متغیرها و متدهای مرتبط با هم است. یک کلاس خصوصیات ذکر شده را توصیف و پیاده سازی کرده و برای استفاده از آن در کد برنامه، بایستی یک نسخه از آن را (که به آن شی یا object می گویند) بسازید. بر روی شی یا object ایجاد شده، می توانید متغیرها و متدهای کلاس را به کار ببرید. هر تعداد که نیاز داشته باشید می توانید شی یا object از روی کلاس ساخته و در نقاط مختلف کد برنامه استفاده کنید.
    مبحث شی گرایی یا object oriented یک مقوله بسیار گسترده است که در این درس، درس های دیگر این بخش به مهم ترین جزئیات آن خواهیم پرداخت.
    در بخش مقدمه آموزش C#‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎ ‎ و در مثال Hello World مشاهده کردید که از یک کلاس در کد برنامه استفاده شده بود در C#‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎ ‎ تقریبا همه چیز بر مبنای کلاس ها ایجاد می شوند. در کد این درس قصد داریم تا کلاس خود را گسترش داده و با انواع امکانات آن آشنا شویم :


    using System;

    namespace ConsoleApplication1
    {
    class Program
    {
    static void Main(string[] args)
    {
    Car car;


    car = new Car("Red");
    Console.WriteLine(car.Describe());


    car = new Car("Green");
    Console.WriteLine(car.Describe());


    Console.ReadLine();


    }
    }


    class Car
    {
    private string color;


    public Car(string color)
    {
    this.color = color;
    }


    public string Describe()
    {
    return "This car is " + Color;
    }


    public string Color
    {
    get { return color; }
    set { color = value; }
    }
    }
    }


    همانطور که مشاهده می کنید، در کد فوق یک کلاس جدید به نام Car ایجاد کرده ایم. برای سهولت کار، این کلاس جدید را به همراه کلاس Program در فایل اصلی برنامه قرار داده ایم، اما روش رایج این است که هر کلاس
    درون فایلی جداگانه هم نام خود کلاس ایجاد شود. کلاس Car دارای یک متغیر (ویژگی) به نام Color است که برای تعیین رنگ خودرو به کار می رود. ویژگی Color به صورت خصوصی یا private تعیین شده که به این معناست که توابع و کلاس های خارج از تابع Car امکان دسترسی مستقیم به این خاصیت را ندارند. فقط توابع و متدهای داخل کلاس Car می توانند به خاصیت Color دسترسی مستقیم داشته باشند.
    نکته :
    اگر تابع یا کلاسی خارج از کلاس Car بخواهد به خاصیت خصوصی یا private به نام Color دسترسی داشته باشد، بایستی از یک Property برای این منظور استفاده کند. یک Property به نام Color در انتهای کد کلاس Car تعریف شده که وظیفه خواندن و نوشتن این خاصیت را بر عهده داشته و به سایر کلاس ها و توابع برنامه اجازه دسترسی به آن را می دهد.
    همچنین کلاس Car دارای یک تابع سازنده یا Constructor می باشد. تابع سازنده، متدی است که وظیفه ساخت یک نمونه شی از کلاس مربوطه و برگردندن آن را به عهده داشته و به محض ساخته شدن یک نمونه شیء از کلاس اجرا می شود. تابع سازنده کلاس Car دارای یک پارامتر بوده که برای مقداردهی اولیه شی Car با خاصیت Color بزرگ قرمز (Red) به کار می رود. بنابراین هر شی از کلاس Car که ساخته شود، رنگ قرمز را به صورت پیش فرض برای خاصیت Color خود خواهد داشت. برای نشان دادن درستی این مسئله نیز تابع Describe طراحی شده که نام هر شی یا object ساخته شده با مقدار رنگ آن را در خروجی نشان می دهد.
    در قسمت های بعدی به آموزش مفاهیمی همچون خواص (Properties)، تابع سازنده (Constructor) و بازه دید (Visibility) خواهیم پرداخت.
    __________________________________________________ __________________________________________________ __________________________________________________ ___________________

    آموزش ویژگی های کلاس (C#‎‎‎‎‎‎‎‎‎ Properties)


    ویژگی (Property) در C#‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎ به شما امکان کنترل روش دسترسی و تغییر متغیرهای یک کلاس را می دهد. استفاده از ویژگی در C#‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎، راه توصیه شده و درست جهت دسترسی به متغیرهای یک کلاس، به وسیله متدها یا توابع خارج از کلاس جاری، در زبان برنامه نویسی شی گرا object oriented می باشد. به عبارت دیگر، وقتی که یک متد یا کلاس دیگری در برنامه، بخواهد به متغیر یک کلاس دسترسی داشته باشد، بهتر است به جای این که مستقیما متغیر را استفاده کند، از طریق یک ویژگی یا Property در کلاس خود متغیر، به آن دسترسی داشته باشد.
    در مثال آموزشی درس قبل (کار با کلاس ها) برای اولین بار روش استفاده از یک ویژگی یا Property را نشان دادیم. یک ویژگی یا Property همانند ترکیبی از یک متغیر Variable و یک متد method است. ویژگی نمی تواند پارامتری را دریافت کند، اما به وسیله آن می توانید قبل از ارسال و دریافت متغیر، مقدار آن را تغییر دهید. هر ویژگی یا Property از دو قسمت اصلی get و set تشکیل شده که همانند کد مثال زیر درون مجموعه Property تعریف می شوند :


    private string color;

    public string Color
    {
    get { return color; }
    set { color = value; }
    }


    متد get مقدار متغیر را خوانده و آن را به برنامه بر می گرداند، از طرف دیگر متد set هم مقدار مورد نظر را به متغیر نسبت می دهد. مثال اول، ساده ترین حالت تعریف Property در C#‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎ است، اما می توانید آن را گسترش نیز بدهید.

    public string Color{
    get
    {
    return color.ToUpper();
    }
    set
    {
    if(value == "Red")
    color = value;
    else
    Console.WriteLine("This car can only be red!");
    }
    }

    در کد مثال فوق، ویژگی را کمی گسترش دادیم. در کد جدید، متغیر Color در هنگام return، به دلیل استفاده از متد ToUpper() به صورت حروف بزرگ، برگردانده می شود. از طرف دیگر، با استفاده از دستور شرطی if، فقط مقدار رنگ “red” برای متغیر Color پذیرفته می شود.
    __________________________________________________ __________________________________________________ __________________________________________________ ___________________

    آموزش کار با روش Method overloading در C#‎‎‎‎‎‎‎‎‎ :


    بسیاری از زبان های برنامه نویسی از تکنیک ای به نام پارامترهای پیش فرض /اختیاری (defult/optional parameters) پشتیبانی می کنند. این تکنیک به برنامه امکان می دهد تا با تعیین مقدار پیش فرض برای یک یا چند پارامتر تابع، آن ها را در هنگام مقدار دهی اختیار کند. این روش برای افزودن انعطاف پذیری به کد برنامه، بسیار کاربرد دارد.
    برای مثال، می خواهید قابلیت کارکرد را به تابع ای که یک یا چند پارامتر ورودی دارد، بدهید. در اینگونه موارد، به دلیل عدم ارسال تعداد مورد نیاز پارامتر در هنگام فراخوانی، ممکن است کد شما درست اجرا نشود. برای حل این مسئله، می توانید از امکان جدید تعیین پارامترهای اختیاری یا optional استفاده کنید. در این روش، شما برای برخی پارامترها یک مقدار پیش فرضی یا default تعیین کرده که حتی اگر در هنگام فراخوانی تابع، مقداری برای آن ارسال نشد، کد دچار مشکل نشود.
    پارامترهای پیش فرض (default parameters) در زبان C#‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎ 4.0 معرفی شدند، اما تا قبل از آن برنامه نویسان از تکنیکی تقریبا مشابه به نام method overloading استفاده می کردند. در این حالت، برنامه نویس چندین تابع هم نام ولی با مجموعه پارامترهای مختلف را تعریف می کند. برای مثال متد اول یک پارامتر و متد دوم دو پارامتر دریافت می کند. یک مثال مناسب برای این روش، تابع Substring از کلاس String Class است. به صورت زیر

    string Substring (int startIndex)
    string Substring (int startIndex, int length)


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


    class SillyMath
    {
    public static int Plus(int number1, int number2)
    {
    return Plus(number1, number2, 0);
    }


    public static int Plus(int number1, int number2, int number3)
    {
    return number1 + number2 + number3;
    }
    }




    در کد مثال فوق، تابع Plus را با دو حالت تعریف کرده ایم. در حالت اول، تابع دو پارامتر را جهت جمع کردن 2 عدد دریافت می کند، درحالی که حالت دوم سه پارامتر دارد. درواقع کار اصلی را نسخه 3 پارامتری تابع انجام می دهد. اگر بخواهیم دو عدد را جمع کنیم، خیلی ساده، تابع با حالت 3 پارامتری را فراخوانی کرده و عدد 0 را به پارامتر سوم پاس می دهیم. تا به عنوان مقدار پیش فرض برای آن استفاده شود. کد مثال فوق، منظور ما در بخش قبل را نشان می دهد.
    حال اگر بخواهید تا 4 عدد را با هم جمع کنید، می توانید یک نسخه 4 پارامتری دیگر را نیز به برنامه اضافه کنید. به صورت کد زیر :


    class SillyMath
    {
    public static int Plus(int number1, int number2)
    {
    return Plus(number1, number2, 0);
    }

    public static int Plus(int number1, int number2, int number3)
    {
    return Plus(number1, number2, number3, 0);
    }
    public static int Plus(int number1, int number2, int number3, int number4)
    {
    return number1 + number2 + number3 + number4;
    }
    }


    مثال فوق خیلی ساده تکنیک method overloading را در C#‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎ نشان داده و نحوه ارتباط دادن توابع با هم را بیان می کند.

    __________________________________________________ __________________________________________________ __________________________________________________ ___________________

    تعیین سطح دسترسی (access modifier) در #C



    با تعیین بازه دسترسی یک کلاس، متد، متغیر یا ویژگی در C#‎‎‎‎‎‎‎‎‎‎‎‎، روش و امکان دسترسی به آن عنصر و دیده شدن در سطح کل برنامه را تعیین می کند. به این امکان در اصطلاح سطح دسترسی یا access modifier می گویند.
    رایج ترین حالت ها برای access modifier در C#‎‎‎‎‎‎‎‎‎‎‎‎، خصوصی Private و عمومی Public است، اما حالت های دیگری نیز وجود دارد که در لیست زیر به معرفی آن ها پرداخته ایم. برخی از موارد زیر ممکن است تاکنون مورد استفاده شما قرار گرفته باشد، اما دانستن آن ها ضروری است.


    · عمومی Public : در این حالت عنصر به صورت عمومی تعریف شده و از هر جای برنامه توسط هر عنصر دیگر مثل سایر کلاس ها و توابع قابل دسترسی است. این حالت دارای حداقل محدودیت برای عنصر بوده و Enums و Interface ها به صورت پیش فرض public هستند.
    · محافظت شده یا Protected : در این حالت عنصر فقط توسط عوامل کلاس خود یا کلاس هایی که از کلاس آن به ارث رفته اند، قابل دسترس است.
    · درونی یا internal : در این حالت عنصر فقط درون پروژه جاری قابل دسترسی است.
    · درونی محافظت شده یا Protected internal : این حالت، همانند حالت internal است با این تفاوت که عناصر موجود در کلاس هایی که از کلاس عنصر به ارث رفته اند، حتی اگر در پروژه های دیگر باشند قابلیت دسترسی به آن را دارند.
    · خصوصی یا Private : در این حالت فقط اعضای همان کلاس امکان دسترسی به آیتم مورد نظر را دارند. این حالت دارای بیشترین میزان محدودیت بوده و Class ها و Struct ها به صورت پیش فرض خصوصی private هستند.

    برای مثال، اگر شما دارای دو کلاس به نام های Class 1 و Class 2 باشید، اعضای private مربوط به Class 1 فقط درون خود آن کلاس قابل دسترس هستند. شما نمی توانید یک نمونه از اشیای Class 1 را در Class 2 ساخته و امکان دسترسی به آن ها را داشته باشید.
    اما اگر Class 2 از Class 1 به ارث رفته یاشد (فرزند آن باشد) که در اصطلاح می گوییم inherit شده، فقط اعضای غیر private کلاس 1 در کلاس 2 قابل دسترس هستند.
    __________________________________________________ __________________________________________________ __________________________________________________ ___________________


    اعضای ایستا یا استاتیک (Static members) در #C



    همان طور که در درس های قبل متوجه شدید، رایج ترین راه تعامل و ارتباط با یک کلاس Class، ساخت یک نمونه از آن (شی یا object) و سپس کار کردن بر روی object مورد نظر است. در بیش تر موارد، این کل چیزی است که کلاس شامل می شود، یعنی ساخت چندین نمونه مختلف از یک کلاس و سپس استفاده از هر کدام از آن ها در یک قسمت و یا یک منظور. اما مواردی وجود دارد که تمایل دارید کلاسی داشته باشید که بدون نمونه سازی از آن یا حداقل بدون نیاز به ساخت شی از آن، بتوانید از اعضا و متدهای آن استفاده کنید. برای مثال ممکن است کلاسی داشته باشید که دارای یک متغیر بوده و مقدار این متغیر در همه موارد صرف نظر از محل به کارگیری آن، یکسان است. به این موارد اعضای ثابت یا Static members می گویند، ثابت Static به این دلیل که همواره مقدار آن ها در سطح برنامه یکسان است.
    یک کلاس می تواند استاتیک Static بوده و یا دارای اعضا و متدهای Static باشد. یک کلاس ثابت Static Class را نمی توانید نمونه سازی کنید. کلاس های ثابت در واقع مجموعه ای member ها هستند تا یک کلاس به معنای واقعی.
    همچنین شما ممکن است یک کلاس معمولی (non-static) ساخته و برای اعضای آن، ثابت تعریف کنید. یک کلاس غیر ثابت non-static را می توانید نمونه سازی کرده و از روی آن object بسازید، اما نمی توانید از اعضای ثابت آن در شی ها استفاده کنید.
    همانطور که مشاهده کردید، ما از کلمه کلیدی Static برای مشخص کردن کلاس از نوع ثابت استفاده کرده و همچنین این کلمه کلیدی را نیز برای متد Calculator Area به کار برده ایم. اگر هم برای کلاس و هم برای متد، کلمه کلیدی Static را استفاده نکنید، کامپایلر C#‎‎‎‎‎‎‎‎‎‎‎‎ دچار خطا می شود. زیرا یک عضو غیر ثابت (non-Static) را نمی توان در یک کلاس Static تعریف کرد.
    برای استفاده از متد Calculator، بایستی آن را همانند کد زیر و به صورت مستقیم با کلاس فراخوانی کرد.
    ما می توانیم متدهای کاربردی دیگری را نیز درون کلاس Rectangle Class تعریف کنیم اما شاید این سوال برایتان پیش آمده، که چرا ما پارامترهای width و height را به جای تعریف در کلاس، مستقیما به متد مقصد پاس داده ایم؟
    به دلیل این که کلاس فوق به صورت ثابت Static تعریف شده، ما می توانیم مقدار متغیرهای height و width را درون کلاس نگهداری کنیم، اما به صورت ثابت و فقط دارای یک نمونه از مقادیر مثلا 3 و 2 و دیگر نمی توان آن ها را تغییر داد. این نکته مهم را بایستی در کار با توابع Static لحاظ کنید.
    به جای کد فوق، می توان با غیر ثابت تعریف کردن کلاس، امکان تغییر و انعطاف پذیری کامل را به کلاس خود بدهید.
    همانطور که مشاهده می کنید، کلاس را به صورت غیر ثابت non-Static تعریف کرده ایم. همچنین یک تابع سازنده Construction تعریف شده که مقدار پارامترهای Width و height را به نمونه ساخته از کلاس، نسبت می دهد. در پایان هم متد out put Area را جهت محاسبه مساخت به صورت static تعریف کرده ایم. این مثال نمونه خوبی از ترکیب اعضای غیر ثابت و ثابت در یک کلاس non-static می باشد.
    آخرین ویرایش به وسیله danialafshari : پنج شنبه 10 اسفند 1396 در 23:19 عصر

  2. #2
    مدیر بخش آواتار danialafshari
    تاریخ عضویت
    تیر 1387
    محل زندگی
    هر کجا هستم باشم آسمان مال من است
    پست
    2,909

    نقل قول: آشنایی با زبان برنامه نویسی #C

    با سلام
    لطفاً همه ی مباحث رو در یک تاپیک قرار دهید
    و از تبلیغات درون پست ها خودداری کنید
    لطفاً از پرسیدن سوال در خصوصی خودداری کنید.
    قبل از ایجاد تاپیک، حتماً قوانین سایت را مطالعه فرمایید.
    قوانین پرسش های دانشجویی
    برای درست وارد شدن کد در قالب C#‎‎‎ سایت، ابتدا کد رو درون Notepad.exe کپی سپس از اونجا به سایت در قالب C#‎‎‎ منتفل کنید
    نرم افزار code manager دستیار برنامه نویسان جهت نگهداری کد ها

تاپیک های مشابه

  1. مبتدی: زبان برنامه نویسی مناسب جهت کار با شبکه
    نوشته شده توسط rasoul60 در بخش برنامه نویسی مرتبط با شبکه و وب در VB6
    پاسخ: 1
    آخرین پست: یک شنبه 04 مهر 1395, 15:24 عصر
  2. مقاله: سلام به جاوا به زبان Groovy:آشنایی با زبان برنامه نویسی
    نوشته شده توسط mazdadoost در بخش برنامه‌نویسی جاوا
    پاسخ: 9
    آخرین پست: سه شنبه 15 مرداد 1392, 16:58 عصر
  3. اشنایی با زبان برنامه نویسی F#‎ قسمت اول
    نوشته شده توسط r00tkit در بخش F#‎‎
    پاسخ: 2
    آخرین پست: یک شنبه 11 فروردین 1392, 00:26 صبح
  4. خبر: آشنایی با زبان برنامه نویسی Ceylon
    نوشته شده توسط taak-software در بخش برنامه‌نویسی جاوا
    پاسخ: 0
    آخرین پست: شنبه 11 آذر 1391, 11:49 صبح
  5. مقاله: سلام به جاوا به زبان Groovy:آشنایی با زبان برنامه نویسی
    نوشته شده توسط mazdadoost در بخش Java SE : نگارش استاندارد جاوا
    پاسخ: 0
    آخرین پست: سه شنبه 11 تیر 1387, 14:31 عصر

برچسب های این تاپیک

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •