اثر پروانه ای

برنامه نویسی حرفه ای کامپیوتر به زبان سی شارپ - لیست کامل کلمات کلیدی در ʚĭɞ - ßữʈʨɾflỵ ⓔⓕⓕⓔⓒⓣ

اثر پروانه ای

برنامه نویسی حرفه ای کامپیوتر به زبان سی شارپ - لیست کامل کلمات کلیدی در ʚĭɞ - ßữʈʨɾflỵ ⓔⓕⓕⓔⓒⓣ

اثر پروانه ای

اثر پروانه‌ای نام پدیده‌ای است که به دلیل حساسیت سیستم‌های آشوب‌ناک به شرایط اولیه ایجاد می‌شود. این پدیده به این اشاره می‌کند که تغییری کوچک در یک سیستم آشوب‌ناک چون جو سیارهٔ زمین (مثلاً بال‌زدن پروانه) می‌تواند باعث تغییرات شدید (وقوع توفان در کشوری دیگر) در آینده شود.

ایده‌ٔ این‌که پروانه‌ای می‌تواند باعث تغییری آشوبی شود نخستین بار در ۱۹۵۲ در داستان کوتاهی به نام آوای تندر اثر ری بردبری مطرح شد. عبارت «اثر پروانه ای» هم در ۱۹۶۱ در پی مقاله‌ای از ادوارد لورنتس به وجود آمد. وی در صد و سی و نهمین اجلاس ای‌ای‌ای‌اس در سال ۱۹۷۲ مقاله‌ای با این عنوان ارائه داد که «آیا بال‌زدن پروانه‌ای در برزیل می‌تواند باعث ایجاد تندباد در تکزاس شود؟»

آخرین نظرات
  • ۱۳ بهمن ۰۱، ۱۵:۳۱ - حسنا سادات و سما سادات
    عالی

۱۵ مطلب با کلمه‌ی کلیدی «method» ثبت شده است

  • ۱
  • ۰

کلیدواژه short

کلمه کلیدی short یک نوع داده ای صحیح معرفی می کند که مقادیر را طبق شرایط زیر ذخیره می کند.

  • نوع : short
  • محدوده : 32,768- تا 32,767
  • اندازه : صحیح علامتدار 16-بیتی
  • نوع دات نتی: System.Int16

لیترال ها

شما می توانید یک متغیر short را بصورت زیر اعلان و مقدار دهی اولیه کنید:

short x = 32767;

در اعلان قبل، لیترال صحیح 32767 بطور ضمنی از int به short تبدیل شده است. اگر لیترال صحیح در محل ذخیره سازی short جا نشود، یک خطای کامپایل رخ می دهد.

وقتی از متدهای overload شده استفاده می کنید، باید از یک عملگر قالبریز (cast) استفاده کنید. برای مثال متدهای overload شده زیر را که از پارامترهای int و short استفاده می کنند، در نظر بگیرید:

public static void SampleMethod(int i) {}
public static void SampleMethod(short s) {}

  • غلامعلی حسینی بهجانی
  • ۱
  • ۰

کلمه کلیدی sealed

اصلاحگر sealed وقتی به یک کلاس اعمال می شود، از ارث بری کلاس های دیگر از این کلاس جلوگیری می کند. در مثال زیر کلاس B از کلاس A ارث بری می کند، اما هیچ کلاسی نمی تواند از کلاس B ارث بری کند.

class A {}    
sealed class B : A {}

شما همچنین می توانید از اصلاحگر sealed روی پراپرتی یا متدی که یک پراپرتی یا متد مجازی (virtual) را در کلاس پایه رونویسی (override) می کند، استفاده کنید. این کار به شما این امکان را می دهد که به کلاس ها اجازه دهید که از کلاس شما ارث بری کنند و از override کردن برخی متدها یا پراپرتی ها جلوگیری به عمل آورید.

مثال

در مثال زیر ، Z از Y ارث می برد اما Z نمی تواند تابع مجازی F را که در X اعلان شده و در Y مهروموم (sealed) شده را رونویسی (override) کند.

class X
{
    protected virtual void F() { Console.WriteLine("X.F"); }
    protected virtual void F2() { Console.WriteLine("X.F2"); }
}
class Y : X
{
        sealed protected override void F() { Console.WriteLine("Y.F"); }
        protected override void F2() { Console.WriteLine("X.F3");}
}
class Z : Y
{
    // Attempting to override F causes compiler error CS0239.
    // protected override void F() { Console.WriteLine("C.F"); }

    // Overriding F2 is allowed.
    protected override void F2() { Console.WriteLine("Z.F2"); }
}

  • غلامعلی حسینی بهجانی
  • ۱
  • ۰

کلیدواژه return

بیان return روند اجرای متدی را که در آن قرار گرفته را متوقف کرده و کنترل را به جایی که متد فراخوانی شده بازمی گرداند. این بیان همچنین می تواند یک مقدار اختیاری را بازگرداند. اگر نوع برگشتی متد void باشد، می توان از بیان return صرف نظر کرد.

اگر بیان return داخل یک بلوک try قرار گرفته باشد، قبل از اینکه کنترل به محل فراخوانی متد برگردد، بلوک finally (درصورت وجود) اجرا می شود.

مثال

در مثال زیر، متد()A متغیر area را بصورت مقدار double برگشت می دهد.

class ReturnTest
{
    static double CalculateArea(int r)
    {
        double area = r * r * Math.PI;
        return area;
    }

    static void Main()
    {
        int radius = 5;
        double result = CalculateArea(radius);
        Console.WriteLine("The area is {0:0.00}", result);

        // Keep the console open in debug mode.
        Console.WriteLine("Press any key to exit.");
        Console.ReadKey();
    }
}
// Output: The area is 78.54
  • غلامعلی حسینی بهجانی
  • ۱
  • ۰

کلمه کلیدی params

کلمه کلیدی params به شما امکان مشخص کردن یک پارامتر متد که تعداد متغیری آرگومان دریافت می کند را می دهد.

شما می توانید یک لیست از آرگومان ها از همان نوعی که در اعلان پارامتر مشخص شده را که با علامت وریگول از یکدیگر جدا شده اند (comma-separated) ، یا یک آرایه آرگومان ها از همان نوع مشخص شده را به متد ارسال کنید.

در اعلان متد بعد از کلیدواژه params ، هیچ پارامتر اضافه ای مجاز نیست، و فقط یک کلمه کلیدی params در اعلان متد مجاز است.

مثال

مثال زیر راه های مختلفی که می توان آرگومان ها را به یک پارامتر params ارسال کرد را توضیح می دهد.

  • غلامعلی حسینی بهجانی
  • ۱
  • ۰

اصلاحگر پارامتر out

کلمه کلیدی out باعث می شود که آرگومان ها بصورت مرجع ، پاس داده شوند. این کلیدواژه شبیه کلمه کلیدی ref است ، بجز اینکه ref نیاز دارد که متغیر قبل پاس دادن، مقدار دهی اولیه شده باشد. برای استفاده از یک پارامتر out، تعریف متد و فراخوانی متد ، هر باید از کلمه کلیدی out صریحا" استفاده کنند. برای مثال:

class OutExample
{
    static void Method(out int i)
    {
        i = 44;
    }
    static void Main()
    {
        int value;
        Method(out value);
        // value is now 44
    }
}

هرچند متغیرهایی که بصورت آرگومان out پاس داده شده اند مجبور نیستند که قبل از پاس داده شدن مقداردهی اولیه شوند، ولی متد فراخوانی شده، لازم است که قبل از اینکه متد برگردد (با دستور return یا پایان متد) یک مقدار به آنها انتساب دهد.

  • غلامعلی حسینی بهجانی