اشیاء تغییر ناپذیر (Immutable Object)
نویسنده: مهدی ملائیان
تاریخ: ۱۳۹۴/۱۱/۲۲ ۱:۵
آدرس: www.dntips.ir
| مطالب | ۳۶۹۴ |
| نویسندگان | ۲۷۶ |
| گروههای مطالب | ۱۰۲۴ |
| نقشههای راه | ۱۱۹ |
| دورهها | ۱۴ |
| اشتراکها | ۱۷۹۱۴ |
public class Currency
{
private string _currencyName;
private string _countryName;
public string CurrencyName
{
get { return _currencyName; }
}
public string CountryName
{
get { return _countryName; }
}
} private string _currencyName;
private string _countryName;
public Currency(string paramCurrencyName,string paramCountryName)
{
_currencyName= paramCurrencyName;
_countryName = paramCountryName;
} public void DoSomthing()
{
_countryName = "somthing else";
} public class Currency
{
private readonly string _currencyName;
private readonly string _countryName;
public string CurrencyName
{
get { return _currencyName; }
}
public string CountryName
{
get { return _countryName; }
}
public Currency(string paramCurrencyName,string paramCountryName)
{
_currencyName= paramCurrencyName;
_countryName = paramCountryName;
}
} public class Currency
{
public string CurrencyName { get; }
public string CountryName { get; }
public Currency(string paramCurrencyName,string paramCountryName)
{
CurrencyName= paramCurrencyName;
CountryName = paramCountryName;
}
} public class SallowMutable
{
public int Value { get; }
//Mutable
public StringBuilder NameBuilder { get; }
public SallowMutable(int value, StringBuilder nameBuilder)
{
Value = value;
NameBuilder = nameBuilder;
}
} public class UsageOfSallowMutable
{
public static void Main()
{
StringBuilder x=new StringBuilder();
var sm=new SallowMutable(10,x);
x.Append("Ali");
sm.NameBuilder.Append(" Reza");
Console.WriteLine(sm.NameBuilder);// Ali Reza
}
}