개체 이니셜라이저
Cat cat = new Cat { Age = 10, Name = "Fluffy" };
Cat sameCat = new Cat("Fluffy"){ Age = 10 };
2.예제
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Starcraft
{
internal class DataManager
{//static으로 되어있으면 타입으로 접근한다.
public static readonly DataManager instance = new DataManager();
Dictionary<int, ItemData> dicItemDatas = new Dictionary<int, ItemData>();
private DataManager() { //private으로 작성
}
public void LoadItemDatas()
{
dicItemDatas.Add(100, new ItemData(100, "장검", 0, 8));
dicItemDatas.Add(101, new ItemData(101, "단검", 0, 5));
dicItemDatas.Add(102, new ItemData(102, "활", 0, 6));
dicItemDatas.Add(103, new ItemData(103, "도끼", 0, 10));
dicItemDatas.Add(104, new ItemData(104, "사슬 갑옷", 1, 0));
dicItemDatas.Add(105, new ItemData(105, "사슬 갑옷", 2, 0));
}
public ItemData GetItemData(int id)//아이템 데이터 가져오기
{
Console.WriteLine("{0}: {1}", dicItemDatas[id].id,dicItemDatas[id].name);
return this.dicItemDatas[id];
}
}
}
using System;
using System.Collections;
using System.Collections.Generic;
using System.Linq;
using System.Security.Cryptography;
using System.Security.Cryptography.X509Certificates;
using System.Text;
using System.Threading.Tasks;
namespace Starcraft
{
internal class App
{
//생성자
public App()
{
DataManager.instance.LoadItemDatas();
//개체 이니셜라이저
List<Item> items = new List<Item>()
{
new Item(DataManager.instance.GetItemData(100)),
new Item(DataManager.instance.GetItemData(104))
};
}
}
}
'C# 기초' 카테고리의 다른 글
대리자2, Action, Func, 람다활용, (0) | 2023.07.27 |
---|---|
대리자 (0) | 2023.07.27 |
가짜 인벤토리 만들기 (0) | 2023.07.26 |
namespace, 컬렉션, (0) | 2023.07.26 |
다차원배열 (0) | 2023.07.25 |