C#

[class] C# - Inheritance (상속)

1,569

목차

  1. C# 상속 (Subclass, Superclass)
  2. sealed 키워드

 

C# 상속 (Subclass, Superclass)

 

C#에서는 한 클래스에서 다른 클래스로 (속성・메소드) 상속 가능.

 

※ 상속 장점: 

① 기존 코드 재사용 가능. 

② 다형성 (= 상속한 메서드로 다른 작업 수행).

 


 

1.

subclass (자식클래스)

다른 클래스를 상속하는 클래스.

= Derived Class (파생클래스)

 

superclass (부모클래스)

다른 클래스에 의해 상속되는 클래스.

= Base Class (기본클래스)

 

2.

: (콜론) 기호 사용해 상속. (cf. Java 경우, extends 키워드 사용.)

(예) 

class 자식 : 부모 

{

    ... 

 


[예제] ExHz (자식)클래스가 Hz (부모)클래스를 상속.

※ 상속해야만 ExHz 클래스에서 Hz 클래스의 site 속성 사용 가능.

※ 아래 3개의 파일을 아래 구조의 폴더 안에 생성 후 실행.

C:\Users\사용자명\source\repos\Homzzang\Homzzang\

 

1.

Hz.cs 생성. 

 

using System;

namespace Homzzang

{

    class Hz

    {

        public string site = "홈짱닷컴"; 

        public void intro()

        {

            Console.WriteLine("코딩언어 그누보드 서버관리 강의");

        }

    }

}

 

2.

ExHz.cs 

 

using System;

namespace Homzzang

{

    class ExHz : Hz

    {

        public string host = "Homzzang.com";

    }

}

 

3.

Program.cs 생성.

 

using System;

namespace Homzzang

{

    class Program

    {

        static void Main(string[] args)

        {

            ExHz my = new ExHz();

            Console.WriteLine(my.site + " " + my.host);            

            my.intro();

        }

    }

}

 

결과값:

코딩언어 그누보드 서버관리 강의

홈짱닷컴 Homzzang.com

 

sealed 키워드

 

다른 클래스가 상속 받는 걸 차단.

※ 부모 클래스 선언 부분에 sealed 키워드 추가.

cf. Java 경우, final 키워드 사용.

 


[예제] ExHz 클래스가 Hz 클래스 상속하는 걸 차단.

※ 그 결과, 컴파일 시 에러 발생.

 

sealed class Hz 

{

 ...

}


class ExHz : Hz 

{

 ...

}

 

결과값: 'ExHz': cannot derive from sealed type 'Hz'



분류 제목
basic C# - Home (입문) - 추천 링크
basic C# - Intro (소개) - 용도・특징
basic C# - Start (시작) - Visual Studio Community 설치/실행/세팅
basic C# - Syntax (구문)
basic C# - Output (출력)
basic C# - New Lines (줄바꿈)
basic C# - Comment (주석)
basic C# - Variable (변수)
basic C# - User Input (사용자 입력)
basic C# - Data Type (데이터 타입) - 자료형 (종류 + 변환)
basic C# - Operator (연산자)
basic C# - String (문자열)
basic C# - Math (수학)
basic C# - Boolean (참거짓)
basic C# - If ... Else - (이프 조건문)
1/3
목록
 홈  PC버전 로그인 일본어
그누앞단언어
그누뒷단언어
그외코딩언어
그누보드
제작의뢰
Q&A
커뮤니티 2
웹유틸
회원센터
홈짱닷컴 PC버전 로그인