C#/Problems
C# 생성자를 여러개 정의할 경우.
McRobbin
2020. 4. 16. 17:41
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
|
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace Study_010
{
public class Item
{
string name;
public string Name { get { return this.name; } }
int damage;
public int Damage { get { return this.damage; } }
int upgrade;
public int Upgrade {get{return this.upgrade;} set{this.upgrade = value;}}
public Item(string name)
{
this.name = name;
this.damage = 10;
}
public Item(string name, int damage) : this(name)
{
this.damage = damage;
}
public Item(string name, int damage, int upgrade) : this(name, damage)
{
this.upgrade = upgrade;
}
}
}
|
이와같이 사용할 수 있습니다.
ex) public Item() { }
public Item(string name) : this() { Console.Write("이름 : {0} ", name); }
public Item(string name, int damage : this(name) { Console.Write("데미지 : {0} ", damage); }
public Item(string name, int damage, int upgrade : this(name, damage) { Console.Write("업그레이드 : {0}", upgrade); }
public Item("장검", 10, 3);
결과 : 이름 : 장검 데미지 : 10 업그레이드 : 3
미리 정의된 생성자를 밑에서 상속받듯이 사용 가능하다.