하나의 기반 클래스를 사용하여 파생 클래스를 생성하는것
예)
라면 클래스를 사용하여 짜장라면 클래스를 생성한다.
장점: 짜장은그대로 두고 라면의 기능만 수정하고 싶을때 수정 하면 된다
상속 예시
class Ramen{
public void heat(){
Console.WriteLine("라면면발을 끓입니다.")
}
}
class Jajangramen: Ramen{
public viod jajang(){
Console.WriteLine("짜장소스를 끓입니다")
}
}
class Program {
Jajangramen jaja= new Jajangramen();
jaja.heat();
jaja.jajang();
}
오버라이딩
상속받은 메소드에서 같은 메소드의 이름을 생성하였을때 메소드를 재정의한다
메소드의 이름과 매개변수의 갯수나 타입이 모두 일치할때 가능
상속받은 메소드의 내용만 변경하는것
오버라이딩 예시
class Ramen{
public void heat(){
Console.WriteLine("라면면발을 끓입니다.")
}
}
class Jajangramen: Ramen{
public viod heat(){
Console.WriteLine("짜장라면을 끓입니다")
}
}
class Jampongramen: Ramen{
public viod heat(){
Console.WriteLine("짬뽕라면을 끓입니다")
}
}
class Program {
Jajangramen jaja= new Jajangramen();
Jampongramen jam = new Jampongramen();
jaja.heat();
jam.heat();
}
오버로딩
이름은 같은데 매개변수의 갯수나 형식이 다를때 사용
기존에 없던 새로운 메소드를 정의하는것
오버로딩 예시
class Ramen{
public void heat(){
Console.WriteLine("라면면발을 끓입니다.")
}
public void heat(string menbal){
Console.WriteLine(menbal+"면발을 끓입니다.")
}
public void heat(string menbal, int gadak){
Console.WriteLine(menbal+"면발을 "+gadak+"끓입니다")
}
}
'c# > c# 기본문법' 카테고리의 다른 글
c# 배열 (0) | 2023.04.13 |
---|---|
c# 클래스의 데이터 전달 (0) | 2023.04.13 |
c# 생성자와소멸자 (1) | 2023.04.13 |
C# 클래스,인스턴스 (0) | 2023.04.13 |
형변환 (0) | 2023.04.13 |