Один из способов псевдонима типа - сделать это в разделе using
.Вы можете присвоить произвольное имя практически любому типу, а затем использовать это имя в своем коде.
Вы можете сделать это с помощью встроенных типов, если вы просто хотите переключиться с uint
на decimal
:
using Number = System.Int32;
и использовать его следующим образом:
Number myNumber = 1;
Затем, если вы захотите изменить все экземпляры Number
на decimal
, просто сделайте:
using Number = System.Decimal;
Это можно сделать с помощью пользовательских типовтакже, например, скажем, у нас есть два класса, Bank1
и Bank2
.Bank1
имеет свойство uint
с именем Balance
, а Bank2
имеет свойство decimal
с тем же именем.Мы можем создать псевдоним с именем Bank
, который мы используем в нашем коде, и сделать так, чтобы он ссылался на тип Bank1
, а затем мы можем создать его экземпляр и присвоить int
балансу.
Чтобы подчеркнуть, что разные классы вызываются каждый раз, я изменил их ToString
переопределения, чтобы баланс decimal
отображался с десятичной точкой:
using Bank = Test.Bank1;
namespace Test
{
public class Bank1
{
public uint Balance { get; set; }
public override string ToString() => $"Balance is {Balance}";
}
public class Bank2
{
public decimal Balance { get; set; }
public override string ToString() => $"Balance is {Balance:N2}";
}
public class Program
{
private static void Main(string[] args)
{
var bank = new Bank();
bank.Balance = 100;
Console.WriteLine(bank);
GetKeyFromUser("\nDone! Press any key to exit...");
}
}
}
Теперь, позже мы можем изменить то, на что ссылается этот псевдоним, не нарушая наш код:
using Bank = Test.Bank2; // Just change what the alias refers to here
Обратите внимание, что вам все равно придется исправлять ошибки компиляции, которые могут возникнуть после изменения типа, в зависимости от того, какие изменения вы внесли.