در توسینسو تدریس کنید

و

با دانش خود درآمد کسب کنید

آموزش سی شارپ (#C) مقدماتی قسمت 11 : کلاس، شئ، و رفتارها

سلام به ITPRO ای های عزیز، در قسمت یازدهم از سری آموزشی زبان سی شارپ مباحث مربوط به برنامه نویسی شئ گرا را با هم شروع خواهیم کرد. مفاهیمی که در این قسمت خدمت شما دوستان ارائه میشه:

  1. آشنایی با کلاس ها و Access Modifier ها
  2. نحوه تعریف شئ از روی کلاس (ساخت Instance)
  3. تعریف فیلدها
  4. تعریف خصوصیات و کنترل دسترسی به مقادیر فیلدها
  5. تعریف رفتارها
#آموزش_زبان_سی_شارپ #آموزش_سی_شارپ #تعریف_رفتارها_در_سی_شارپ #آموزش_گام_به_گام_سی_شارپ #رفتارها_و_خصوصیت_ها_در_سی_شارپ #آموزش_مقدماتی_سی_شارپ #نحوه_استفاده_از_کلاس_در_سی_شارپ #تعریف_فیلد_در_سی_شارپ #استفاده_از_کلاس_ها_در_سی_شارپ
عنوان
1 آموزش سی شارپ (#C) مقدماتی قسمت 1 : شروع دوره متفاوت 23′:11″ رایگان
2 آموزش سی شارپ (#C) مقدماتی قسمت 2 : معماری دات نت و اولین برنامه 31′:46″ 13,200
3 آموزش سی شارپ (#C) مقدماتی قسمت 3 : متغیرها و انواع داده 39′:53″ 9,900
4 آموزش سی شارپ (#C) مقدماتی قسمت 4 : عملگرها و متغیر رشته 40′:14″ 9,900
5 آموزش سی شارپ (#C) مقدماتی قسمت 5 : عملگرهای منطقی ، If و Switch 1:5′:59″ 16,500
6 آموزش سی شارپ (#C) مقدماتی قسمت 6 : حلقه ها 34′:14″ 7,700
7 آموزش سی شارپ (#C) مقدماتی قسمت 7 : آرایه ها و نوع داده Char 33′:24″ رایگان
8 آموزش سی شارپ (#C) مقدماتی قسمت 8 : دستور foreach و var 15′:42″ رایگان
9 آموزش سی شارپ (#C) مقدماتی قسمت 9 : آشنایی با متدها 52′:59″ 9,900
10 آموزش سی شارپ (#C) مقدماتی قسمت 10 : Method Overloading 17′:23″ رایگان
11 آموزش سی شارپ (#C) مقدماتی قسمت 11 : کلاس، شئ، و رفتارها 24′:44″ رایگان
12 آموزش سی شارپ (#C) مقدماتی قسمت 12 : نوشتن برنامه دفترچه تلفن 59′:49″ 13,200
13 آموزش سی شارپ (#C) مقدماتی قسمت 13 : وراثت (Inheritance) 29′:31″ 11,550
14 آموزش سی شارپ (#C) مقدماتی قسمت 14 : Polymorphism 23′:35″ 9,900
15 آموزش سی شارپ (#C) مقدماتی قسمت 15 : Interface ها 17′:4″ رایگان
16 آموزش سی شارپ (#C) مقدماتی قسمت 16 : مفاهیم IoC و DI 19′:12″ 8,250
17 آموزش سی شارپ (#C) مقدماتی قسمت 17 : سازنده ها (Constructors) 22′:22″ 8,800
18 آموزش سی شارپ (#C) مقدماتی قسمت 18 : کلاس ها و اعضاء Static 20′:41″ 6,600
19 آموزش سی شارپ (#C) مقدماتی قسمت 19 : struct ، indexer و readonly 18′:17″ رایگان
20 آموزش سی شارپ (#C) مقدماتی 20 : Operator Overloading و ToString 16′:28″ 6,600
21 آموزش سی شارپ (#C) مقدماتی قسمت 21 : تبدیل نوع و تعریف Cast 19′:29″ 7,700
22 آموزش سی شارپ (#C) مقدماتی قسمت 22 : Generics 24′:14″ 11,000
23 آموزش سی شارپ (#C) مقدماتی قسمت 23 : List و Dictionary 33′:50″ 8,800
24 آموزش سی شارپ (#C) مقدماتی قسمت 24 : استثناها (Exception) ها 24′:48″ 9,900
25 آموزش سی شارپ (#C) مقدماتی قسمت 25 : ویژگی ها و نکات سی شارپ 6 23′:45″ رایگان
زمان و قیمت کل 12:12′:34″ 169,400
11 نظر
ابوالفضل رهنما

سلام

وقت بخیر

الف)مهندس شما دراموزش بصورت زیر کد نویسی کرده اید در این قسمت

private byte age;
   public byte Age
        {
            get {
                return (byte)(age +1);
            }
            set {
                if (value>80)
                {
                    Console.WriteLine("Age is not vaild");
                }
                    age = value;
            }
        }

حال سوال من اینست چرا از روش

  public byte Age
        {
            get
            {
                return (byte)(age + 1);
            }
            set
            {
                if (value > 80)
                {
                    Console.WriteLine("Age is not vaild");
                }
                age = value;
            }
        }

کد نزده اید

ودرضمن شما خودتان کدام روش را می پسندید

ب)اگر درآموزش دوره پیشرفته هم آنلاین کد بزنید بسیار خوب است چون با خطاهای احتمالی هم ما آشنا می شویم

موفق و موید باشید

hamideh smi

با سلام برای این قسمت من یک سوال دارم؟؟سوالم این هستش که فقط زمانی از خصوصیت get و set استفاده می کنیم که میخوایم از سازنده ها استفاده کنیم و خودمون به صورت دستی در برنامه مقدار بدهیم برای فیلدها؟؟؟ یا نه زمانی هم که قرار هست برنامه از کاربر مثلا اسم رو بگیره و ذخیره کنه هم از get و set استفاده میشه!!!؟؟

hamideh smi

ویک سوال دیگه؟؟

وقتی که یک کلاسی رو به صورت protected تعریف میکنیم کافیه؟ یا نه حتما باید فیلدها و خصوصیت های داخلش هم به صورت protected تعریف شوند؟؟ نمی تونیم اونها رو به صورت public تعریف کنیم؟

حسین احمدی

سلام، در مورد استفاده از Property ها، شما زمانی از Property ها استفاده می کنید که قصد دارید روند مقدار دهی یا گرفتن مقدار یک فیلد رو به صورت دستی پیاده سازی کنید و این مورد ارتباط مستقیم با مبحث سازنده ها نداره، بدنه get برای برگرداندن مقدار در خصوصیت و بدنه set برای مقدار دهی استفاده میشه.

در مورد سوال دومتون، protected برای اعضای یک کلاس استفاده میشه و نمیشه برای خود کلاس از protected استفاده کرد.

hamideh smi

پس برای مثال یک کلاسی که میخوایم از نوع protected باشه رو به شکل زیر تعریف می کنیم درسته؟؟

class person
 { 
   protected static person ( string name , string lastname)
   {
     Name  = name;
     LastName = lastname;
   }
   protected string Name{ get; set ;}
   protected string LastName{ get; set ;}
 }
hamideh smi

بعد یک سوال دیگه که اینجا مجددا برام پیش میاد اینه که الان چون من سازنده رو از نوع static انتخاب کردم موقع ساخت یک شی از کلاس میتونم person.person بنویسم درسته؟؟؟ برای متد هم همین طوریه؟؟ (فرض کنیم اگر اسم متد Display باشه) میتونیم هم اسم شی.Display بنویسیم هم person.Display ؟؟؟؟

حسین احمدی

داخل کد بالا، شما در حقیقت سازنده کلاس رو protected تعریف کردید و می تونید از روی کلاس فقط تو کلاس های مشتق شده از person شئ ایجاد کنید، خصوصیت های Name و LastName هم که به صورت protected تعریف شدند تو کلاس های مشتق شده در دسترس هستند. برای درک مفهوم protected باید با مبحث inheritance یا وراثت آشنا باشید.

حسین احمدی

سازنده های static زمانی اولین استفاده از کلاس به صورت خودکار و تنها برای یکبار اجرا میشن و شما به صورت مستقیم نمی تونید اجراشون کنید.

hamideh smi

صحیح...برای متدها چی؟؟ اون شیوه ای که گفتم درست بود؟؟

حسین احمدی

متدهای static رو به همون صورتی که گفتید می تونید فراخوانی کنید که تو قسمت کار با کلاس های static به صورت کامل توضیح داده شدند.

hamideh smi

سپاس گزارم استاد.موفق باشید.

نظر شما
برای ارسال نظر باید وارد شوید.
از سرتاسر توسینسو
تنظیمات حریم خصوصی
تائید صرفنظر
×

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