1-4장
2022. 4. 14. 15:48ㆍSTUDY/C#
728x90
반응형
인터페이스
using System;
namespace study
{
interface Ibird
{
void Fly();
}
class Duck : Ibird
{
public void Fly()
{
Console.WriteLine("Duck Fly");
}
}
class Goose : Ibird
{
public void Fly()
{
Console.WriteLine("Goose Fly");
}
}
}
클래스 형변환 implicit, explicit
using System;
namespace study
{
class MassUnit
{
double mass;
public double Mass
{
get { return mass; }
set { mass = value; }
}
public MassUnit(double mass)
{
this.mass = mass;
}
}
class Kilogram : MassUnit
{
public Kilogram(double mass) : base(mass) { }
public override string ToString()
{
return Mass + "kg";
}
static public implicit operator Gram(Kilogram kilogram) //암시적
{
return new Gram(kilogram.Mass);
}
}
class Gram : MassUnit
{
public Gram(double mass) : base(mass) { }
public override string ToString()
{
return Mass + "g";
}
static public explicit operator Kilogram(Gram gram) //명시적
{
return new Kilogram(gram.Mass);
}
}
class Program
{
static void Main(string[] args)
{
Kilogram kilogram = new Kilogram(10); //10kg
Gram gram = new Gram(5); //5g
Kilogram kilogram1 = (Kilogram)gram; // 5kg
Gram gram1 = kilogram; //10g
}
}
}
728x90
반응형
'STUDY > C#' 카테고리의 다른 글
델리게이트, 이벤트 (0) | 2022.06.01 |
---|---|
추상클래스, 인터페이스 연습용 (0) | 2022.05.24 |
델리게이트와 이벤트를 활용한 콜벡메서드 예제 (0) | 2022.05.24 |
11-15장 (0) | 2022.04.18 |
5-10장 (0) | 2022.04.18 |