[C#] 상속과 sealed

Programming/.NET Programming 2009. 5. 31. 05:55

상속과 키워드 sealed 용어 정리

상속 : 어떤 클래스를 기본으로 새로운 클래스가 파생되는 것.
부모클래스(기본 클래스)로부터 상속을 받아 자식클래스(파생 클래스)가 생성된다.
상속 과정에서 클래스의 내용이 추가되기도 하고 함수의 내용이 바뀌기도 한다.

sealed : 더이상의 상속을 막는 keyword, 추상클래스/인터페이스 앞에는 못 씀
추상클래스를 상속받은 클래스에서 추상함수를 정의를 해줘야하고, 인터페이스 역시 다른 클래스에 상속을 하여 선언된 함수들을 정의 해줘야 하기 때문이다.

상속과 키워드 sealed 예제

using System;


namespace Study

{

    interface 인터페이스

    {

        void Test();

    }


   
interface
인터페이스2

    {

       void Test();

    }

 

    abstract class 추상클래스

    {

        public abstract void Test();

    }


   
class
일반클래스 : 인터페이스, 인터페이스2, 추상클래스
    {

        void 인터페이스.Test() // '인터페이스.' : 어디에서 상속받은 건지 명시

        {

            throw new NotImplementedException();

        }

 

        void 인터페이스2.Test() // '인터페이스2.' : 어디에서 상속받은 건지 명시
        {

            throw new NotImplementedException();

        }

 

        public override void 추상클래스.Test()
                                    // '추상클래스.' : 어디에서 상속받은 건지 명시
        {

            throw new NotImplementedException();

        }

    }

 

    sealed class 일반클래스2 : 일반클래스 

    {

    }

 

    class 일반클래스3 : 일반클래스2 // Error. 일반클래스2 앞에 sealed 때문에 안됨

    {

        public 일반클래스3()

        {

        }

    }

}



'Programming > .NET Programming' 카테고리의 다른 글

[C#] this와 상속  (0) 2009.05.31
[C#] 오버로딩과 오버라이딩  (0) 2009.05.31
[C#] 인터페이스, 추상클래스, 클래스  (1) 2009.05.31
[C#] static과 new 그리고 property  (0) 2009.05.31
[C#] C# 시작하기  (0) 2009.05.31
: