블로그 이미지
Magic_kit
study 관련자료를 한곳으로 자기 개발 목적으로 재태크 재무 관리 목적으로 일상생활의 팁을 공유 하기 위하여 블로그를 개설 하였습니다.

calendar

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
반응형

Category

Recent Post

Recent Comment

Archive

2009. 8. 15. 01:14 .Net Project/.Net 3.5 Sp1
반응형
 추상 클래스란 ?

메서드는 객체의 동작을 정하며, 그러기 위해서는 동작을 구현하는 코드를 가져야 한다.
코드가 없으며, 동작을 표현할 수 없으므로 메서드는 본체를 가지고 본체에는 구현 코드가 작성되는 것이 당연하다. 그러나 코드를 가지지 않는 메서드도 있는 이런 메서드를 추상 메서드라고 한다.
추상 메서드는 abstract지정자를 붙이는데 인수 목록과 리턴 타입은 가지지만, 
세미콜론 하나로 끝이 난다.

Public abstract int MoMo(int a, doubleb)  <----이와같은 방식으로 사용

추상메서드는 본체가 없기 때문에 구체적인 동작의 정하지 않으며, 호출 할 수 없다.
추상클래스는 너무 일반적이어서 인스턴스를 생성할 수 없는 클래스이며, 선언문에는 
abstract지정자는 붙이면 이 클래스는 추상 클래스가 된다.
추상클래는 보통 추상메서는 포함하고 있다.  

Program.cs 


using System;

public class 추상클래스
{
    public static void Main()
    {
        Sonata sonata = new Sonata();
        sonata.Run();       // 표준
        sonata.Left();       // 공통
        sonata.Right();     // 자체
    }
}

Car.cs


using System;

// 추상클래스
public abstract class KS
{
    // 추상메서드
    public abstract void Run();     // 강제성이있음 이름만 정의
}

// 현대 공통
public class HD : KS
{
    public override void Run()           // abstract >> override 로 지정해주어야함
    {
        Console.WriteLine("Run~~");
    }
    public virtual void Left()                        // 가상함수
    {
        Console.WriteLine("Left Turn~~");
    }
}

// Sonata만의 기능
public class Sonata : HD
{
    public void Right()
    {
        Console.WriteLine("Right Turn~~");
    }
}

반응형
posted by Magic_kit