مشخصات مقاله
-
3815
-
0.0
-
4907
-
0
-
0
تقسیم بندی کلاس های هم نام در سی شارپ
برخلاف متدهای کلاس، نمی توان چندین کلاس هم نام داخل یک فضای نامی داشت (بر خلاف حالتی که چندین متد هم نام داخل یک کلاس می توان ساخت). به عبارت دیگر نمی توان دو کلاس هم نام در یک محدوده (scope) ایجاد کرد. یکی از گزینه های پیش رو این است که هر کلاس هم نام را در فضای نامی جداگانه قرار دهید.
- روی (لیبل) Records.cs کلیک کنید تا به فایل آن دست پیدا کرده و آن را به صورت زیر تغییر دهید.
namespace Store
{
namespace Inventory
{
public class StoreItem
{
public int itemNumber;
public string itemName;
public decimal unitPrice;
}
}
namespace Personel
{
namespace PayrollRecords
{
public class Employee
{
public string firstName;
public string lastName;
public decimal HourlySalary;
}
public class Contractors
{
public string FullName;
public int ContractStatus;
}
}
}
}
- حال فایل DepartmentStore.cs را باز کرده و آن را به ترتیب زیر اصلاح کنید.
using Supply;
using Store.Inventory;
public class DepartmentStore
{
static int Main()
{
... No Change
return 0;
}
}
اضافه بارگذاری کلاس در C# امری امکان ناپذیر
برخلاف متدهای کلاس، نمی توان اسم کلاس را داخل فایل اضافه بارگذاری (overload) کرد. به عبارت دیگر، نمی توان دو کلاس هم نام در یک محدوده (scope) ایجاد کرد. یکی از گزینه های پیش رو این است که هر کلاس را داخل فضای نامی خودش قرار دهید.
مثال:
namespace Arithmetic
{
public class Numbers
{
public int value;
}
}
namespace Algebra
{
public class Numbers
{
public int value;
}
}
گزینه ی دیگری نیز وجود دارد که در مبحث generics مطرح می گردد. به عبارتی مختصر، می توان در یک فضای نام، دو کلاس داشت که یکی عمومی (generic) باشد و دیگری generic نباشد.
مثال:
namespace Arithmetic
{
public class Numbers
{
public int value;
}
public class Numbers
{
public int value;
{
}
}
}
استفاده از کلاس Class نام گذاری شده در C#
- ابتدا، فایل Suppliers.cs را بازکنید، سپس آن را به صورت زیر اصلاح کنید.
namespace Supply
{
public class SalesPerson
{
public string fullName;
public string expertise;
public string phoneNumber;
}
}
namespace Manufacturers.Domestic
{
public class Manufacturer
{
public string companyName;
public string contactName;
public string contactPhone;
}
}
namespace Manufacturers.Foreign.Asia
{
public class Manufacturer
{
public string country;
public string companyName;
public string contactName;
public string contactPhone;
public string webSite;
}
}
- حال، به فایل DepartmentStore.cs مراجعه کرده و آن را به صورت زیر تغییر دهید.
using Supply;
using Manufacturers.Foreign.Asia;
using Store.Inventory;
public class DepartmentStore
{
static int Main()
{
... No Change
return 0;
}
}
1394/07/27
4907
3815
رمز عبور : tahlildadeh.com یا www.tahlildadeh.com