سی شارپ

|

اموزش سی شارپ

در این بخش کلاس person من age و fullname را دارد , همچنین سازنده پیش فرض را دارد که سازنده 2 ورودی را داراست و متد showinfo هم دارد.

کلاس factory من یک فیلد دارد با نام index از جنس integer با نام private و یک فیلد دارد با نام name .

حالا آمدم به جای این که یک فیلد برایش قرار دهم که حالا با property متناظر باشد و یک person را بگیرد آمدم یک فیلد قرار دادم از جنس آرایه ایی از جنس person ها یعنی اومدم گفتم که حالا یک فیلد همین کلاس داشته باشد که یک کارخانه مسلما همانطور که میدانید میتواند نفرات زیادی را در خودش داشته باشد که به عنوان کارمند یا کارگر در آن کارخانه کار کنند به خاطر این به صورت آرایه person خود را تعریف کردم.

سازنده ایی که برای factory در نظر گرفتم یک نامی را برای کارخانه در نظر میگیرد و یک سایزی را برای تعداد کار کن هایی که میخواد داشته باشه و آن سایز را در این جا نگاه کنید index خودم را برابر با 1 قرار دادم که میخوام روی آن خانه های آرایه از 0 حرکت کنم name را برابر با نام کارخونه قرار دادم و حالا آن آرایه ایی که من اینجا تعریفش کردم هنوز new نکردم new میکنم به آن سایزی که موقع new کردن خود factory دارم میدم یعنی دارم میگم factory.ofactory=new factory پرانتز را باز میکنم نامش را قرار میدهم ایرانخودرو یک سایزی را برای کارکنانش میدهم مثلا 1000 حالا وقتی این کار را میکنم یک آرایه 1000 تایی برای من در سازنده دوم new میشود.

اموزش سی شارپ

اموزش c sharp

حالا من میتونم مقدار دهی کنم برای مقدار دهیش من یک bool تعریف کردم از جنس bool با نام add که میخوام person ها را ادد کنم به آن آرایهکه یک person را میگیرد.

به عنوان مثال علیرضا علوی را میگیرد وقتی من میگم add alireza alavi قرار علیرضا علوی را بیاره در آن آرایه حالا داخلش چیکار کردم یک متغییر از جنس bool تعریف کردم که ابتدا برابر با false قرارش دادم بعد چک کردم که حالا اگر index من کوچیکتر بود از length-1 یعنی از خونه های آرایه کوچکتر بود همچنان index من ++ بشه چون 1- هست در وهله اول مسلما کوچکتره ++ میشه و 0 میشود و از 0 شروع میکند و index من را آن person شماره 1 را در خانه 0 قرار میدهد و حالا شما حساب کنید 10 بار 50 بار 100 بار این متد فراخوانی بشود index داره اضافه میشه تا وقتی که کمتر از خانه های آرایه بشود این مقدار را در آن خانه قرار میده که این مقدار هم دقیقا یک person هست و حالا blnresult را برابر با true قرار میدم که یعنی عملیات قبل با موفقیت انجام شده چون به صورت یک bool هست باید یک مقدار bool را ارسال بکند که مقدار true هست اگر داخل این شرط بشود یعنی index ما پر نشده باشد.

در غیر این صورت اگر داخل این شرط نشود یعنی false و مقدار false رو میرسونه یعنی عملیات add انجام نشد.

c sharpخب این add که ما نوشتیم چی میگرفت یک person میگرفت ادد میکرد.

ما اومدیم یک overload هم برای ادد نوشتیم یعنی گفتیم همان publicbooladd حالا به جای این که person بگیره fullname و age هم بگیره کفایت میکند دقیقا همان کارا رو انجام دادیم خودمان دیگه اینجا اومدیم یک object نیو کردیم fullname و age رو که گرفتیم دادیم به اون object و حالا blnresult رو برابر قرار دادیم با add operson یعنی person که ایجاد کردیم این ادد دقیقا میاد همین ادد رو فراخونی میکنه به عنوان یک person یک object بهش میده عملیات رو چک میکنه اگه جا داشته باشه ادد میکنه true میفرسته ارم نه که false رو میفرسته و در نهایت فراخونی کردیم و گفتیم که متد showinfo نمایشش به این صورت باشه که نام کارخونه رو نمایش بده و یک show person هم نوشتیم براش که با foreach گفتیم به ازای هر person با نام مثلا operson داخل این آرایه این operson باز showinfo رو برامون فراخونی کنه.

دریافت آخرین مطالب وبلاگ در کانال داتینه

علی نعیمی

علی نعیمی هستم،دارای لیسانس سخت افزار.
از سال 90 بصورت تخصصی به فراگیری زبان سی شارپ پرداختم. در حال حاضر مسلط به سی شارپ، جاوا، پایگاه داده و زبان های تحت وب هستم.

نظرات
نظر بدهید